我想知道,如果它是可以做到多種類型的一個變量:可能性定義與基於宏觀
class MyClass
{
public:
MyClass();
...
#if defined USE_TYPE_ONE
static TypeOne myVariable;
#else
static TypeTwo myVariable;
#endif USE_TYPE_ONE
};
的原因是,我有兩個班,TypeOne & TypeTwo,與相同的函數變量,但不同的實現和 我不想在調用myVariable的每個地方使用宏。
編輯
感謝迅速的意見和答覆。我不得不提及MyClass在不同的類中使用了很多。這就是爲什麼我想避免模板。因爲即使使用具有默認模板參數類型的模板類,我也必須使用<>(更改許多其他地方)來使用MyClass而不需要TypeOne。
是的,這是可能的。在詢問是否有可能之前,您應該嘗試編譯您的代碼。 – mascoj
聽起來像你需要一個[類模板](http://en.cppreference.com/w/cpp/language/class_template)。 –
@ChrisDrew這可能是正確的做法,除非他需要將MyClass存儲在容器中。 – mascoj