scope相关内容

C ++中的类的类的范围是什么?

我写了一个类似的类。 class Mesh { public: vector< ;顶点> vs; } 其中顶点 class Vertex { public: const double x,y,z; } 我有一个函数加载 Mesh 从文件: shared_ptr load_mesh(string filena ..
发布时间:2016-11-02 00:07:55 C/C++开发

使用“struct Foo”在字段decl中不向前声明嵌套类

我显然误解C-ish特性如何同时“声明”和引用使用 struct X 在C ++中工作的类型。 (我甚至不知道这个功能被称为,正确。)我有三个例子,下面显示我在做什么,但主要的问题是:为什么是嵌套类型,以这种方式,在全局范围而不是在类范围内? 这个工作来转发声明嵌套结构: #include class Foo1 { Foo1(); 〜Foo1(); ..
发布时间:2016-11-01 09:42:13 C/C++开发

麻烦访问外部float数组

我有两个文件中有以下程序 main.cpp float POW10 [300]; main(0 { Fill_POW10(); } $ b b Fill.cpp extern float * POW10; Fill_POW10() { for(int i = 0; i { POW10 [i] = i; } } ..
发布时间:2016-10-30 16:38:25 C/C++开发

限制#define标签的范围

限制 #define 标签范围并避免不必要的令牌冲突的正确策略是什么? 在以下配置中: Main.c #include“Utility_1.h” #include“Utility_2.h” #include“Utility_3.h” VOID Main(){...} Utility_1.h #define ZERO“Zero” #define ..
发布时间:2016-10-30 03:20:02 C/C++开发

内部声明对象的范围

如果我声明一个这样的对象: void main() { myclass objectA (anotherclass(true,true,0)); } 我通过直接调用后者的构造函数创建一个objectA和另一个对象“anotherclass”,什么是“anotherclass”的范围? 完成? 解决方案 临时文件在包含它的完整表达式结尾时被破坏,即当 ..
发布时间:2016-10-29 23:16:54 C/C++开发

C ++如果在函数中重新声明成员变量,则警告

给定以下结构 A类{ int test; void f(){int test; } } 我刚刚遇到一个奇怪的情况,当提到测试时,编译在VS2010下,正确引用函数局部变量,但是,当编译在gcc下时,不正确地引用成员变量。花了很多时间跟踪。 无论如何,问题是,在gcc或VS中有一个选项,以便在每次重新声明成员变量时启用编译器警告在局部函数范围内? 解决方 ..
发布时间:2016-10-28 06:23:47 C/C++开发

是否可以在同一个函数中引用范围外的局部变量?

在这段代码中,我引用了局部变量 b ,即使它超出范围。但是我从同一个函数里面做,所以它可能还在堆栈上,对吧?我运行的程序,它的工作,但我想知道是否保证在所有实现上工作。 #include< ; iostream> void main() { int * a; { int b = 5; a =& b; } std :: cout ..
发布时间:2016-10-27 05:54:34 C/C++开发

访问本地类中的问题

void foobar(){ int local; static int value; 类的访问{ void foo(){ local = 5; / * value = 10; } } bar; } void main(){ foobar(); } 为什么不能访问 local 里面 foo()编译? OTOH我可以很容易地访问和修改静态变量 valu ..
发布时间:2016-10-27 01:45:49 C/C++开发

C ++中的命名空间别名的范围是什么?

在函数定义中定义的C ++命名空间别名是否具有块,函数,文件或其他范围(有效期)? 解决方案 这是一个块有效期。例如,如果你定义一个命名空间别名如下,命名空间别名abc将在{...}块之外无效。 { namespace abc = xyz; abc :: test t; // valid } abc :: test t; // invalid ..
发布时间:2016-10-25 17:03:11 C/C++开发

#include指令的限制范围

假设我有一个包含 std :: string 的类的头文件。 #include class Foo { std :: string Bar; public: // ... } 此头文件的用户可能不想将 std :: string 包含在他/她的项目中。 解决方案 类的用户必须 em> ,否则他们 ..
发布时间:2016-10-25 14:34:22 C/C++开发

#include指令的限制范围

假设我有一个包含 std :: string 的类的头文件。 #include class Foo { std :: string Bar; public: // ... } 此头文件的用户可能不想将 std :: string 包含在他/她的项目中。 解决方案 类的用户必须 em> ,否则他们 ..
发布时间:2016-10-25 14:15:25 C/C++开发

#include指令的限制范围

假设我有一个包含 std :: string 的类的头文件。 #include class Foo { std :: string Bar; public: // ... } 此头文件的用户可能不想将 std :: string 包含在他/她的项目中。 解决方案 类的用户必须 em> ,否则他们 ..
发布时间:2016-10-24 17:18:55 C/C++开发

函数参数的默认值是“passing_parametr”* 2

我写了以下内容: #include int foo(int x,int y = 2 * x) { return y; } int main() { printf(“%d\\\ ”,foo(5)); } 但我有编译时错误局部变量'x'可能不会出现在这个上下文中 但我预计它会正常,因为3.3.4 / 1: 在 ..
发布时间:2016-10-24 16:50:41 C/C++开发