用于在函数内调用命名空间的任何简短形式
any short form for calling namespace inside the function
我使用犰狳矩阵库来分配一个向量,例如:
mid(mids::input1)=....
mid(mids::input2)=....
mid(mids::input3)=....
mid(mids::input4)=....
mid(mids::input5)=....
mid(mids::input6)=....
这里 mid
是一个向量,它的函子与 operator =
混合是类似于 mid[...]
的东西,用于将值分配给向量的特定索引。
和mids
是一个命名空间。因为,我经常使用 mid(mids:....)
的模式,我想知道是否有任何方法可以避免写得太长并缩短它,例如:
mid(input6)=...
换句话说,在 mid
的仿函数内部,我希望考虑命名空间 mids
。
是否有任何 C++11(或更低版本)的解决方案?
我不喜欢使用宏。我不喜欢为整个代码打开 using namespace mids;
。
我只需要 using namespace mids;
在 mid
仿函数中。
只需将 using namespace mids;
放入要使所有名称可见的范围内。它不会使该范围外的任何内容可见。示例:
void fun1 () {
using namespace mids;
auto v = input1; // Ok, finds mids::input1
}
void fun2 () {
auto v = input1; // Error, cannot see mids::input1
}
偶数
void fun () {
mid.input(input1); // Error
{
using namespace mids;
mid.input(input1); // Ok
}
mid.input(input1); // Error
}
我使用犰狳矩阵库来分配一个向量,例如:
mid(mids::input1)=....
mid(mids::input2)=....
mid(mids::input3)=....
mid(mids::input4)=....
mid(mids::input5)=....
mid(mids::input6)=....
这里 mid
是一个向量,它的函子与 operator =
混合是类似于 mid[...]
的东西,用于将值分配给向量的特定索引。
和mids
是一个命名空间。因为,我经常使用 mid(mids:....)
的模式,我想知道是否有任何方法可以避免写得太长并缩短它,例如:
mid(input6)=...
换句话说,在 mid
的仿函数内部,我希望考虑命名空间 mids
。
是否有任何 C++11(或更低版本)的解决方案?
我不喜欢使用宏。我不喜欢为整个代码打开 using namespace mids;
。
我只需要 using namespace mids;
在 mid
仿函数中。
只需将 using namespace mids;
放入要使所有名称可见的范围内。它不会使该范围外的任何内容可见。示例:
void fun1 () {
using namespace mids;
auto v = input1; // Ok, finds mids::input1
}
void fun2 () {
auto v = input1; // Error, cannot see mids::input1
}
偶数
void fun () {
mid.input(input1); // Error
{
using namespace mids;
mid.input(input1); // Ok
}
mid.input(input1); // Error
}