[問題] 繼承 建構問題
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++2008
問題(Question):
換個方式來問好了
假設我有 A B 兩個class
其中
class A{
private:
int a;
};
class B{
private:
int b;
};
然後當我要在main裡面 建構一個B物件的時候
B b(1,2);
在不是用 B::B(int x, int y) : A(x), b(y) {} 這方式的前提下
我要怎麼 把a值給寫進去
例子
我正在寫的 A是一個image,有長寬與圖的指標,
B是bmp 的class, 有bmp的標頭檔
我是想要在主程式中用 B b('filepath');
然後在B的建構式中 讀檔 把標頭檔讀進去 再用A建立完整個圖
B::B(char* filepath){
fstream input;
//省略
input.read((char*) width, 4);
//省略
}
就是因為在宣告一張bmp的時候 我沒辦法直接知道要傳進去給 image 的值
所以我想在bmp的建構式中 也把image的資訊寫到裡面
想請問有沒有甚麼方法??
感謝^^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.167.49.101
→
09/24 20:58, , 1F
09/24 20:58, 1F
→
09/24 21:07, , 2F
09/24 21:07, 2F
※ 編輯: MiguelC 來自: 218.167.49.216 (09/25 00:53)
→
09/25 13:01, , 3F
09/25 13:01, 3F
→
09/25 13:46, , 4F
09/25 13:46, 4F
→
09/25 13:48, , 5F
09/25 13:48, 5F
感謝^^
如果用protected的話 程式碼都不用改 就ok了~
之前讀不太懂protected 所以就沒有用過
剛剛跑去找了幾個例子 終於改好了
※ 編輯: MiguelC 來自: 140.113.69.230 (09/25 17:09)