2
struct A
{
static void foo();
static void foo(int);
static void foo(double, char);
...
};
,並在範圍
namespace nm
{
using A::foo; // not right
}
如何在一個類中引入了靜態名字命名的範圍是什麼?
struct A
{
static void foo();
static void foo(int);
static void foo(double, char);
...
};
,並在範圍
namespace nm
{
using A::foo; // not right
}
如何在一個類中引入了靜態名字命名的範圍是什麼?
你不能。
n3376 7.3.3/8
A,使用聲明一類構件應爲成員聲明。
struct X { int i; static int s; }; void f() { using X::i; // error: X::i is a class member // and this is not a member declaration. using X::s; // error: X::s is a class member //and this is not a member declaration.
}
n3376 7.3.3/3
在用作成員聲明using聲明,嵌套名稱說明符應命名基類的類被定義。
我認爲它對靜態成員是有意義的,如果C++改變他們的標準。 – user1899020