我遵循YouTube教程,我可以創建基本的類,但教程沒有解釋Class :: Class如何工作,我搜索谷歌,但我只知道它被稱爲一元運算符,它是什麼但我不知道它如何處理類,請幫我解釋一下,非常感謝。C++一元運算符在類上使用的是什麼意思? (Class :: Class)
#include <iostream>
#include <string>
//Class
class Mother {
public:
void msg();
};
void Mother::msg(){ //This is where i don't undrstand
std::cout << "Go home early sweetie" << std::endl;
}
class Daughter: public Mother {
public:
void getMsg();
};
void Daughter::getMsg(){ //Same as this
std::cout << "Mom said ";
msg();
}
//Main
int main() {
Daughter lucy;
lucy.getMsg();
return 0;
}
我在代碼中看不到一個一元運算符,但是當您在'Mother :: msg'和'Daughter :: getMsg'函數前面詢問類名時:請注意函數已定義在類聲明之外。所以如果你定義了一個成員函數,你必須給出這個類的名字,否則這個函數將是全局的。這是你問的嗎?爲什麼'母親::'在那裏?或者你在問構造函數嗎? –
是@Karsten,我在詢問函數前面的類名 – ShadowLegend
也可以告訴我這是什麼意思? 'Class :: Class:var {...}'這是否意味着變量是在類內定義的?與你所說的一樣的概念? – ShadowLegend