gpt4 book ai didi

c++ - namespace 的可见性问题

转载 作者:行者123 更新时间:2023-11-30 01:31:22 26 4
gpt4 key购买 nike

我有两个源文件,一个名为 main.cpp(其中定义了命名空间 M)和文件 engines.h(其中定义了几个名称)。
main.cpp 包含 engines.h
engines.h需要用到M里面的东西,M需要用到engines.h里面的东西.

我在 engines.h 中执行 using namespace M; 时出错。

最佳答案

不要在头文件中使用 using 命名空间。这将从包含该头文件的每个翻译单元内的 namespace 中获取所有符号,因此您将遇到符号困惑(名称冲突,这可能是您遇到的情况)。在头文件中使用完全限定,或者至少在本地使用 using 命名空间语句(在您要提高可读性的函数或方法中)。

对于您的情况,您得到的错误是什么?标题的内容是什么?

关于c++ - namespace 的可见性问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3186540/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com