declaration相关内容
编译器说,当我这样做时找不到函数的引用: // link.h template T * Link(T *& T *(*)()) // link.cpp template T c:Link(T *& ChildNodeReference,T *(* ObjectCreator)()){ } 如果我在标题中的类
..
我正在尝试创建不包含很多其他文件的正确头文件。 (要保持它们的清洁,以加快编译时间,...) 我在执行此操作时遇到两个问题: 1 - 基类上的转发声明无效。 B类; A类:public B { // ... } 2 - STD类的转发声明无效。 namespace std { class string; }
..
我的专案只有两个来源档案: a.cpp: code> const int n = 8; b.cpp: extern const int n; int main() { //错误LNK2001:未解析的外部符号“int const n”(?n @@ 3HB) int m = n; } 我知道有几种方法可以使它工作; 解决方
..
讨论 Type(identifier); 语法和它是一个声明,我遇到了 Type(:: x); 。我希望给定一个全局变量 x ,它会将 :: x 作为一个表达式( :: x + 2 ),并将 :: x 转换为类型。但是,它会产生编译器错误。 这里是一个简短的例子: int x; int main(){ int(:x); //不编译 int(:: x + 2); // co
..
这是什么的描述或意义: 例如: class test { ..... }; 解决方案 C ++一个单程编译器。在编译器需要知道一个符号引用实际定义类之前的类的情况下,转发引用是必要的。这种情况的典型例子是两个类需要包含彼此的指针。即 B类; A类{ B * b; }; B类{ A * a; }; 如果没有
..
对于什么可能是一个愚蠢的问题提前道歉,但在C ++类中,为什么闭尾括号后的分号?我经常忘记它,并得到编译器错误,从而失去时间。似乎对我有点多余,这是不可能的情况。人们是否真的做了 class MyClass { 。 。 。 } MyInstance; 编辑:从C兼容性的角度来看,和枚举,但由于类不是C语言的一部分,我想它的主要是在类似的声明构造之间保持一致性。
..
当我们在Java,Vala或C#中设计类时,我们将定义和声明放在同一个源文件中。但在C ++中,传统上最好将两个或多个文件中的定义和声明分开。 如果我只是使用一个头文件, Java? 是否有性能损失或什么? 解决方案 答案取决于你创建什么样的类。 C ++的编译模型可以追溯到C的日子,因此将数据从一个源文件导入到另一个源文件的方法比较原始。 #include 指令会将您正在包
..
class my_class { ... my_class(my_class const&)= delete; ... }; = delete ? 是否有任何其他“修饰符”( = 0 和 = delete )? 解决方案 删除函数一个C ++ 11功能: “禁止复制”的常用形式现在可以直接用 表示: class
..
在Stroustrup的 中,Stroustrup写道,控制语句的条件语句中的变量的声明和初始化不仅被允许,而且被鼓励。他写道,他鼓励它,因为它将变量的范围减少到它们所需的范围。这样的东西... if((int i = read(socket)) 0){ //句柄输入 } else { return true; }
..
使用C ++ 11,我们现在可以在头声明中初始化类成员: class aClass { private: int mInt {100}; public: aClass(); 〜aClass(); }; 所以我有点困惑。传统上,构造函数中的初始化列表已用于成员初始化: aClass :: aClass() :mInt ) { ... }
..
我已经在类中的函数声明旁边看到 default 。它是做什么的? class C { C(const C& C(C&&)= default; C& operator =(const C&)& =默认; C& operator =(C&& amp;)& =默认; virtual〜C(){} }; 解决方案 这是一个
..
我的理解是,C ++允许静态const成员被定义在类中,只要它是一个整数类型。 为什么,我有链接器错误? #include #include class test { public: static const int N = 10; }; int main() { std :: cout
..
是否可以在C ++的for循环的初始化体中声明两个不同类型的变量? 例如: for(int i = 0,j = 0 ... 定义两个整数我可以在初始化体中定义一个 int 和 char 解决方案 不可能,但您可以这样做: float f; int i; for(i = 0,f = 0.0; i // ... }
..
什么是未声明的标识符错误? 错误文本示例: 对于Visual Studio编译器:错误C2065:'printf':undeclared标识符 对于GCC编译器:`printf'undeclared(首次使用此函数) 解决方案 它们通常来自忘记包含包含函数声明的头文件,例如,此程序将给出一个“未声明的标识符”错误: 缺少 int main(){ std ::
..
const 在这些声明中的含义是什么? const 困惑我。 class foobar { public: operator int()const; const char * foo()const; }; 解决方案 添加 const 指向一个方法的指针将基本上变成 const ,因此您不能更改任何成员数据。 (除非你使用 mutable ,稍后再说)。
..
在: http://www.learncpp.com/cpp-tutorial/19-header-文件/ 提到以下内容: add.cpp: int add(int x,int y) { return x + y; } main.cpp: #include int add(int x,int y); //使用函数
..
在C ++类的声明,可以标记一个组成员的私人或公共,如: 私人: INT X; 双Y; 好像没有办法在C#中做到这一点。我错了? 解决方案 没有,你不能这样做在C#。 目前最好的,你可以使用成员默认可见性,这是私人的,而不是使用私有,但对于公众,你必须表明它的所有成员。
..
好吧,我有这个原型,被写了有人在C#else和我试图把它变成的Objective-C。现在,我还没有与C#任何正式的经验,所以我不知道这一切呢。我明白的前三个变量,但我跑成什么了第四和第五行(C_DATA)正在做的问题。是第四个宣布方法,然后第五定义它还是发生了什么? !感谢您的帮助。 公共类C_DATA { 公共双重价值; 公众诠释标签; 公众诠释身份证; 公共C_DATA(){}
..
我想写一个正则表达式,从变量声明语句拉出所有变量值和他们的名字。说我有 INT I,K = 10,L = 0 我想写一个正则表达式的东西像int\s ^,?|(^ ,?)* ,而这也将接受 K = 10,即(不INT它前面) 基本思路是 如果string使用int开始然后 度日, 分开变量列表 我知道提取CSV值,但是我在这里的字符串有一些初步的价值。我该如何解决呢?
..
我是VB.Net的家伙。 (因为我必须要,因为谁签我的支票的人是这么说的:P)我在Java中长大,我一般不争阅读或在C#写的,当我得到机会。今天我碰到一些语法来了,是我从来没有见过,而我似乎无法弄清楚 在下面的方法声明,什么是< ?T>表示 静态无效美孚< T>(PARAMS T [] x) 我见过连用声明泛型集合和东西,但我不能为我的生活弄清楚什么它的这种方法。
..