编译器警告(等级 4)C4596

'name':成员声明中的非法限定名

注解

成员声明具有意外的限定。 若要解决此警告,请从标识符中删除限定。

默认情况下,此警告处于关闭状态。 可以使用 /Wall/wN4596 在命令行上将其启用为级别 N 警告。 或者,在源文件中使用 #pragma warning(N:4596)。 有关详细信息,请参阅默认关闭的编译器警告。 某些版本的编译器仅在 /permissive- 下生成此警告。

从 Visual Studio 2015 Update 3 开始,此警告可用。 在早期版本的编译器中编译且没有警告的代码现在可以生成 C4596。 有关如何禁用特定编译器版本或更高版本中引入的警告的信息,请参阅由编译器版本引发的编译器警告

示例

此示例生成 C4596,并演示修复方法:

// C4596.cpp
// compile with: /w14596 /c

struct A {
    void A::f() { } // error C4596: illegal qualified name in member
                    // declaration.
                    // Remove redundant 'A::' to fix.
};