有沒有一種方法可以用一行代碼來聲明一個新的對象/繼承變量?例如:如何在單個聲明中設置繼承的C++類/結構變量
#include <iostream>
using namespace std;
struct item_t {
string name;
string desc;
double weight;
};
struct hat_t : item_t
{
string material;
double size;
};
int main()
{
hat_t fedora; // declaring individually works fine
fedora.name = "Fedora";
fedora.size = 7.5;
// this is also OK
item_t hammer = {"Hammer", "Used to hit things", 6.25};
// this is NOT OK - is there a way to make this work?
hat_t cowboy = {"Cowboy Hat", "10 gallon hat", 4.5, "straw", 6.5};
return 0;
}
我喜歡這個答案在我的,他是正確的總是使用組成,你可以。 – Craig 2011-03-14 00:59:11
太棒了!謝謝。我仍然在學習C++的功能。自學讓我錯過了一個教室會覆蓋的很多東西。 – Zomgie 2011-03-14 01:07:07
@Zomgie你應該閱讀Herb Sutter的C++編碼標準。它有助於所有這些類型的東西。 – Craig 2011-03-14 01:11:58