如果我有课:
class A{
public:
A();
void print();
private:
int value;
};
A::A() {value = 0;}
void A::print() {cout << value << endl;}
Run Code Online (Sandbox Code Playgroud)
最后两行中::符号的完整名称是什么?
R. *_*des 15
::最后两行中符号的完整名称是什么?
它是"范围解析运算符".
有人知道答案吗?
是.
这是你问过的最奇怪的问题吗?
没有.
它被称为范围解析运算符.
::?好吧,没有别的选择总能奏效.对于您的示例,可以在类的主体中定义这些成员函数,这将是定义类的内联样式:
class A{
int value;
public:
A() {
value = 0;
}
void print() {
cout << value << endl;
}
};
Run Code Online (Sandbox Code Playgroud)
这样,您显然无法将定义放在不同的文件中,因此无法单独编译它们.
在其他时候,当::用于解析a namespace而不是a时class,可以用重新打开该命名空间或将其拉入范围using namespace来替换它.