考慮以下代碼:基類中的數據成員是否存在於派生類中會導致內存浪費?
class A
{
private:
int a,b;
public:
void getA(){ cout << a << b; }
void setA(int n1,int n2){ a = n1; b = n2; }
};
class B : public A
{
private:
int c;
};
int main(){
B b1;
b1.setA();
b1.getA();
return 0;
}
聲明B b1;
創建對象,int
a
和b
(這是在A
類中聲明)耗內存。如果我只想使用b
,則與a
相關的內存將被浪費。這不會導致內存浪費;特別是在大型節目中?
如果'b'無法訪問'A :: a',那麼'b1.setA();'會做什麼? – juanchopanza 2015-02-06 08:09:35
是且不是,因爲這意味着班級層次設計得不好。 – 2015-02-06 08:10:18
不,我想使用其中的一些,但不是所有的都在我的派生類中,我的觀點是不是會導致內存浪費? – 2015-02-06 08:18:59