c++03相关内容
我有一个二维字符串向量,我需要打印出来。整个程序应该从一个txt文件中读取一行,存储每个单词作为一个不同的元素,然后将“单词向量”推入一个包含例如100行的向量。我有一切都去,但问题出来时,我必须打印向量。每行可以有不同的字数,例如: 我喜欢蛋糕 a lot。 所以我不能使用: for(int i = 0; i { for(int j = 0; j { cout
..
我正在将一个Linux C ++ 03应用程序移植到Darwin OS X,并且有一些代码读取/ proc / self / exe下的符号链接,以确定可执行文件所在的目录。 我如何计算在C ++中的Macintosh Darwin OS X Mavericks上运行的当前可执行文件的目录? 在Linux上工作的代码: bool resolveBinaryLocation(
..
给定一个具有 bool isChecked()const 方法的对象 Foo 。让我们说,我有 Foo foos [] 。 我保证 foos 将在 isChecked()上返回 true ,所有其他将返回 false 。 我正在寻找一个聪明的C ++ 03方法来找到 true 元素。我可以做到这一点,但它是非常丑陋。有没有人有更好的东西? distance(foos,find_
..
我修改一个函数接受一个const char *并使用一个函数,ProcessString。 ProcessString是一个函数,期望一个以空字符结尾的字符缓冲区作为char *。缓冲区中的字符可以修改也可以不修改,如下面的函数签名所定义。为了“弥合差距”,我使用了一个临时的std :: string: void ProcessString(char * str); void So
..
为什么 stable_sort 需要一个复制构造函数? ( swap 应该足够了吗?) 或者,我如何 stable_sort 没有复制任何元素? #include class Person { Person(Person const&); //禁止复制 public: Person():age(0){} int age; void s
..
考虑下面的类: class A { const int arr [2] public: A(){} }; 是否可以初始化 arr ( const int arr [2] = {1,2}; )?)的构造函数初始化器列表或任何其他方式 注意,我对使用C ++ 98的方法感兴趣。 解决方案 将它们包装在 struct 中,例如: {
..
我知道 auto 之前有一点用处,因为它是变量的默认值(与静态相反) - 参见问题 考虑到有效的C ++ 03代码,其中可能为了不言自明,使用此关键字: / p> auto int foo2 = 8; 它在C ++ 03下编译,不能在C ++ 11下编译。 有没有任何理由不回来与C ++ 03兼容? 标准委员会意见的来源是这个关键字没有被使用?有关于关键字使用的统计
..
如何在C ++ 03中获得另一种类型的“引用类型”?注意,它可以是其他可解引用的类型,如 std :: vector :: iterator 。 如果我有 模板
..
如何判断给定参数是否为C ++ 03中的右值?我写了一些非常通用的代码,如果可能的话需要参考,否则构造一个新的对象。我可以重载以取值以及by-reference和rvalue返回调用by-value函数? 或者我有一个非常恶心的感觉这是为什么右值引用是在C ++ 0x? 编辑: is_rvalue =!显然有一种方法可以确定一个表达式是否为C ++ 03中的右值或左值(如果是这样
..
我一直在编写C ++一段时间,我开始怀疑规则尽可能使用引用应该应用到任何地方。 与此相关SO职位不同,我有兴趣不同类型的东西。 在我的经验中,引用/指针混合混淆你的代码: std :: vector & x = get_from_somewhere(); // 好?引用作为返回值 some_func_pass_by_ref(x); // OK引用参数和引用变量
..
C ++标准说(8.5 / 5): 默认初始化 T 表示: 如果 T 非POD类类型(子句9),调用 T 的默认构造函数(如果 T 没有 可访问的默认构造函数)。 如果 T 数组类型,每个元素都是默认初始化的。 否则,对象是零初始化的。 / ul> 使用此代码 struct Int {int i; }; int main() { Int a;
..
我需要一个std:map数据结构是只读的,这意味着我必须用数据填充一次,然后只读取这些值,不要更改它们或添加额外的值。 我的非const版本如下所示: in .h #include #include std :: map myMap; void initMap(); // in .cpp
..
假设有一个函数(成员函数可能) SomeType foo() { static SomeType var = generateVar(); return var; } 如何 var 如果 foo 将同时从多个线程调用'初次'? 是否保证 generateVar()在任何情况下都只调用一次(如果使用)? 保证 foo 在任何情况下调用多次时都会
..
正如标题所述,C ++ 11的数学函数库提供了我所使用的功能,以便找到针对特定值的下一个浮点值。 除了拉出std库的代码(我可能不得不诉诸),任何替代方法这样做与C ++ 03(使用GCC 4.4.6)? float input = 3.15; uint32_t tmp; unsigned char * p = reinterpret_cast
..
我有一个函数创建 std :: stringstream 或 std :: fstream 根据条件, //一些类,stringStream_和fileStream_是成员 // obj.Stream()返回std :: iostream& ; if(condition) { stringStream_.str(std :: string()); obj-> Strea
..
我有一个函数创建 std :: stringstream 或 std :: fstream 根据条件, //一些类,stringStream_和fileStream_是成员 // obj.Stream()返回std :: iostream& ; if(condition) { stringStream_.str(std :: string()); obj-> Strea
..
我正在寻找一个解决方案使用C ++ 03标准(我被限制使用这个版本的标准几年了)。欢迎使用C ++ 11的解决方案,但不会被“接受”作为此问题的答案。 什么是简单,我可以将一组相关的常量浮点值表示为单一类型(类似于枚举),以确保类型安全性,而不会产生大量开销,并仍然允许我对这些值直接操作为浮点值。 最后的结果是我想要做如下事情: enum FloatingPointEnum
..
下面的“解决方案”编译,但它不是我想要的。我想将 put 成员函数传递给 for_each ,而不是 * this 。使用提升是不一个选项。这可以在C ++ 03中解决吗? #include #include #include using namespace std; class Wheel {};
..
什么是最先进的功能,检查值是否已设置? 例如,下面的迭代器解析单元格。 一些单元格包含值,其他单元格为空。 最方便的方法是什么? $ b struct iterator {//用法: bool isset()const // if(it.isset $ b bool isSet()const // if(it.isSet()) bool empty()const //
..
我只能访问C ++ 03,我经常想将一个向量移动到一个函数的方式,你可以在C ++ 11中做到这一点。问题如何做,不要混淆用户的代码太多。所以我的问题是程序员是如何在C ++ 11之前做的。 我知道矢量可以使用交换函数“移动”。所以这里是我想出来的: class Foo { public: Foo(std :: vector& vec) { using std
..