1樓:匿名使用者
b.shuchu();不能輸出正確結果是因為,student1 b;之後,並未對成員變數進行初始化,所以輸出亂碼,你可以把
a.shuru();改為b.shuru();即可輸出結果如下:
這裡不是訪問許可權的問題,你呼叫的是父類的函式,父類中的函式當然可以訪問父類中的任何訪問許可權的成員變數
2樓:匿名使用者
#include
#include
using namespace std;
class student
//這兩具函式,因為你使用了公有繼承
virtual void shuchu()//不知道你定義了兩套輸入輸出是為什麼,我改用了虛擬函式
int main()
b.shuru();//對於b型別的物件b,a是不會繼承下來的b.shuchu();//而a型別的物件由於繼承了b的原因在a物件中卻包含了一部分
return 0;//b型別物件,a a,b b,型別不同的獨立物件,a不包含b}
關於php類成員屬性宣告和訪問的問題
團毒七七 你總共提了三個問題,三個問題都是關於訪問許可權控制的,建議你將物件導向的訪問許可權控制的那部分給學習一下。1 類裡的變數是否一定要宣告為成員屬性,答 不一定,在一個類中,有建構函式 屬性 方法 未在方法和建構函式中宣告的變數為屬性,屬性是體現這一個類 物件 的特性的描述,他是這個類的特性的...
c 類中成員函式的問題
1.你這基礎實在薄弱,基本概念都還沒懂 2.下面的void m f1 m m 是對類裡面 static void f1 m m 函式的實現。m m 的意思定義一個m的物件m.也就是這個函式的引數必須是一個m的物件。3.m p 5 q 10 這裡的定義兩個m物件 括號裡的值是傳遞給建構函式的,即呼叫此...
c 語言中類中的靜態資料成員為什麼必須在類體外初始化
du瓶邪 可以通過以下幾個例子更形象的說明這個問題 test.cpp include class a int main 編譯以上 會出現 對 a a 未定義的引用 錯誤。這是因為靜態成員變數a未定義,也就是還沒有分配記憶體,顯然是不可以訪問的。再看如下例子 test.cpp include clas...