Cho em hỏi tại sao không xuất ra chu vi của TuGiac mà xuất ra của TamGiac vậy ạ.
#include <iostream>
using namespace std;
class TamGiac {
private:
int a, b, c;
public:
TamGiac();
TamGiac(int x, int y, int z);
TamGiac(const TamGiac&);
int TinhCV();
};
TamGiac::TamGiac() {}
TamGiac::TamGiac(int x, int y, int z) :a(x), b(y), c(z) {}
TamGiac::TamGiac(const TamGiac &tg) {
this->a = tg.a;
this->b = tg.b;
this->c = tg.c;
}
int TamGiac::TinhCV() {
return a + b + c;
}
class TuGiac :public TamGiac {
private:
int d;
public:
TuGiac();
TuGiac(int x, int y, int z, int k);
TuGiac(const TuGiac&);
int TinhCV();
};
TuGiac::TuGiac() :TamGiac() {}
TuGiac::TuGiac(int x, int y, int z, int k) : TamGiac(x, y, z) {
d = k;
}
TuGiac::TuGiac(const TuGiac &tg) : TamGiac((TamGiac&)tg) {
this->d = tg.d;
}
int TuGiac::TinhCV() {
int k = TamGiac::TinhCV();
return k + d;
}
}
int main() {
TuGiac a(2, 3, 4, 5);
a.Xuat();
system("pause");
return 0;
}