gpt4 book ai didi

c++ - 函数中的多个 using 指令

转载 作者:可可西里 更新时间:2023-11-01 17:44:28 26 4
gpt4 key购买 nike

我不想在给定的函数中包含整个命名空间,而是只包含我将要使用的东西,例如:

void doStuff() {
using std::sin;
using std::cos;
...
// do stuff
}

有时这个列表会变长。我想将其精简为以下内容(类似于变量声明的可能方式):

void doStuff() {
using std::sin, std::cos;
// do stuff
}

我惊讶地发现这是不可能的(错误:使用声明后应为“;”)。为什么 using 是这样定义的?是否有另一种方法可以从给定的命名空间中一致地包含多个函数(除了执行 using namespace ...;)?

最佳答案

我想要的目前好像是做不到的。然而,来自en.cppreference.com :

A using-declaration with more than one using-declarator is equivalent to a corresponding sequence of using-declarations with one using-declarator. (since C++17)

用下面的例子:

namespace X {
using A::g, A::g; // (C++17) OK: double declaration allowed at namespace scope
}

这似乎表明它可能在未来成为可能。

关于c++ - 函数中的多个 using 指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42279171/

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