作者spider391 (小乖)
看板C_and_CPP
標題[問題] 關於 private 存取權限問題
時間Tue Apr 13 09:48:21 2010
class WidgetImpl
{
private:
int a,bc;
};
class Widget{
Widget(const Widget& rhs){
*(pImpl) = *rhs.pImpl; // 注意此行
}
private:
WidgetImpl* pImpl;
};
這段程式 compiler 可以成功。
我這裡的問題是, pImpl 是的存取權限是 private,
為何 rhs.pImpl 仍然可以存取。 是因為都在 Widget 內存取的關系嗎??
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.216.172.111
※ 編輯: spider391 來自: 61.216.172.111 (04/13 09:49)
→ VictorTom:private作用的對象是class, 不是instance:) 04/13 09:50
→ spider391:感謝回答 看來我長久以來觀念錯誤的利害 (淚) 04/13 09:56
推 VictorTom:(拍拍) 同樣的問題小弟我十年前也問過....XD 04/13 10:09
推 nowar100:樓上透露出年齡囉 (誤XD 04/13 13:02
推 dendrobium:他八歲開始寫程式 現在18歲啦(誤XD 04/13 14:19
推 VictorTom:還18歲勒XD 不用四捨五入也30了, 歲月不饒人啊...(遠目) 04/13 17:16