[問題] 如何取得子類的成員資料
想請問一下版上的高手,
我有以下物件的物件結構程式碼,
假如我宣告一二維的vector矩陣
vector<vector<Class1*> > plane(10, vector<Class1*>(10));
之後又將矩陣的每一個元素的兩個auto_ptr綁上Class2
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
plane[i][j] = new Class1(new Class2(3, 4), new Class2(5, 6));
}
}
請問我要怎麼取得plane[i][j]上func_a的member1與member2呢?
表達可能不太清楚 還請見諒 謝謝!
[程式碼]
struct Struct1 {
virtual ~Struct1(){}
virtual void func_a() = 0;
virtual void func_b() = 0;
};
class Class1 {
public:
Class1(Struct1 *func_a, Struct1 *func_b);
void func_a();
void func_b();
auto_ptr<Struct1> do_func_a;
auto_ptr<Struct1> do_func_b;
};
Class1::Class1(Struct1 *func_a, Struct1 *func_b):
do_func_a(func_a),
do_func_b(func_b) { }
void Class1::func_a() {
do_func_a -> func_a();
}
void Class1::func_b() {
do_func_b -> func_b();
}
class Class2 : public Struct1 {
public:
double member1, member2;
Class2(double rmember1, double rmember2);
virtual void func_a();
virtual void func_b();
};
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.217.49
→
05/05 11:11, , 1F
05/05 11:11, 1F
→
05/05 11:12, , 2F
05/05 11:12, 2F
→
05/05 11:12, , 3F
05/05 11:12, 3F
→
05/05 11:14, , 4F
05/05 11:14, 4F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章