c++ - 在 C++ 中使用命名空间
问题描述
我已经理解为什么using namespace std;
在 c++ 中被认为是不好的做法,但让我们考虑例如 2 个(假设的)库“std”和“sfd”,它们都包含一个函数“run()”。
以下是可以的还是仍然是一个问题:(
如果我想从“std”调用“run()”)
using namespace std;
using namespace sfd;
int main(){
std::run();
}
(如果我想从“sfd”调用“run()”)
using namespace std;
using namespace sfd;
int main(){
sfd::run();
}
解决方案
没有问题,因为您在函数调用中使用了限定名称。
如果您在其调用中使用不合格的函数名称,则程序将是格式错误的,例如
run();
在这种情况下,会有歧义。
推荐阅读
- java - 如何捕获和传播通配符类型参数?
- javascript - 单击时手风琴滚动到顶部?
- discord.py - discord.py 创建一个机器人,当特定用户加入语音频道时,该机器人会在文本频道中发送专门的预设消息
- qt - 如何在qmake中指定repc的输出路径?
- django - Django,当我调用扩展模板时丢失了模板的变量
- javascript - 我的幻灯片图像在彼此之上????HTML,JS,CSS
- reactjs - 如何修复 npm ERR!代码 ELIFECYCLE 退出状态 130
- powerbi - 如何为建模自定义 Power BI 功能区
- regex - 如何使用正则表达式匹配 Linux 中的文件名和文件内容?
- vite - 在 Vite 中更改输入和输出目录