【发布时间】:2015-10-08 05:34:11
【问题描述】:
这个程序是否符合 c++ 标准?
namespace X { int i = 1; }
using namespace X;
int main() {
extern int i;
i = 2;
}
我使用不同的编译器得到不同的结果:
GCC 和 Clang 给出链接器错误:未定义的 i 引用。
Visual c++ 接受程序。
【问题讨论】:
-
这里可能的最新版本:melpon.org/wandbox
-
我在示例中有一个错误。我现在已经修好了。现在 GCC 和 Clang 都给出了编译错误(对 i 的未定义引用)。
-
我之前的评论中的意思是链接器错误而不是编译器错误。
标签: c++ namespaces language-lawyer using-directives