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