私は以下のクラスを持っている、と私は唯一の継承されたクラスBがだけ親のコンストラクタのパラメータの一部を継承
class A{
private:
int quantity;
int price;
protected:
char *name;
char *category;
public:
A(int quantity, int price, char *name, char* category)
{ } // CONSTRUCTOR
};
class B: public A
{
private:
char *location;
public:
B(int quantity, int price, char *name, char* category, char *location) :A(quantity, price,name, category)
};
私がしたいのか、親クラスのパラメータの一部だけを持っていることを望みます行うこのように、AからクラスBを継承のみ名、カテゴリを作ることです:
B(char *name, char* category, char *location) :A(name, category)
をしかし、それは動作しません、私はプライベートこれらの属性を作ることは私の問題を解決することを考えたが、それはしませんでした。これを行う方法はありますか、または必要な属性を持つ別のクラスを作成する必要がありますか?
コンストラクタとデストラクタもinheritibleとプライベートデータはありません。 – Raindrop7
2つのパラメータを持つ別のコンストラクタに 'A'を渡します。 – Galik