我遇到了如下所述的情況,並且想要了解其工作原理。我有一個類的構造函數期望另一個類作爲參數。然後在代碼中,我看到的不是將期望的類的對象作爲參數傳遞,而是傳遞了另一個類的對象(該類恰好是預期類的基類)。初始化一個類;而不是將所需的類作爲參數傳遞,而是傳遞該期望類的基類
增加實際代碼:
class s_api {
public:
};
class PB {
public:
PB (s_api *sa) {}
};
class TValue : public s_api {
public:
TValue() {}
};
int main() {
TValue tvl;
PB pb(tvl); //tvl is object of class TValue
}
這是如何工作的)?
[它不會(http://ideone.com/W5a5M) – 2012-02-23 01:10:20