516得票9回答
双冒号 "::" 的意思是什么?

我在一个需要修改的类中找到了这行代码。 ::Configuration * tmpCo = m_configurationDB;//pointer to current db 我不知道双冒号加在类名前面具体是什么意思。如果没有双冒号,我会理解为声明tmpCo是指向Configuratio...

43得票1回答
Python: NameError: 全局名称'...'未定义

在我的代码中,我有:class A: def a(): ...... def b(): a() ...... b() 然后编译器将会报错 "NameError: global name a() is not define...

30得票4回答
在C++中,将"using namespace"包含在头文件中为什么是不好的想法?

阅读Bruce Eckel的《Thinking in C++》有关命名空间的内容时,我遇到了以下声明: ```html 然而你几乎不会在头文件中看到using指令(至少在作用域之外)。原因是using指令消除了该特定命名空间的保护,并且其效果持续到当前编译单元的结束。如果在头文件中放置usi...

15得票3回答
使用C库中未通过std命名空间的符号是否有GCC警告?

请考虑以下(有bug的)C++代码:#include <cmath> #include <cstdlib> #include <iostream> int main() { if (abs(-0.75) != 0.75) { st...

11得票3回答
如何将 Meteor 包中的内容导出到我的应用程序命名空间中?

我知道如何编写 Meteor packages,但是我似乎无法弄清楚如何让所有的导出项都落在我的应用程序命名空间中,就像在这个演示中所描述的那样。 这个特定的包是针对我正在构建的一个应用程序的,它只导出一个可以视为应用程序单例上的修饰符的方法。我尝试了api.export('MyApp.my...

8得票4回答
size_t被定义在哪里?

我知道任何来自C兼容性头文件的头文件: 在全局命名空间中放置相应cxxx头文件会放置在std命名空间中的每个名称 我也知道这些C头文件已经被弃用,作为它们的兼容"cxxx"对应项,从c++17开始。 现在,我相信size_t是由标准定义头文件专门定义的。因此,我认为这在技术上意味着全...

8得票1回答
将声明在自动加载的命名空间类文件中的函数变成全局函数

我的要求可能看起来像是糟糕的做法,但不管怎样我还是想知道它是否可行。 我正在使用composer来自动加载我的类。在其中一个类文件中,我想定义一个可以在全局命名空间内使用的函数缩写。由于composer的要求,这个类需要有命名空间。 我的问题:是否通过轻微的修改,有任何方法使其正常工作? ...

7得票1回答
ADL适用于全局命名空间吗?

示例 例如,使std类型的输出成为可能的解释了如何使用ADL来“注入”某个函数/运算符,具体取决于应用该函数/运算符的类型。 我想知道ADL是否完全适用于全局命名空间,也就是说,是否在全局命名空间范围声明的类型(或通过using可用)会使ADL在全局命名空间中查找匹配的函数? 具体而言,这...