class Base {
static std::vector<std::string> filter;
virtual bool check() {
if(std::find(filter....))
}
}
class Derived : public Base {
static std::vector<std::string> filter;
bool check() override {
if(std::find(filter....))
}
}
假設兩個靜態變量都在其各自的翻譯單元中定義。在基類和派生類中具有相同名稱的靜態成員變量
我有靜態字符串的向量攜帶在基座相同的名稱和派生類,因爲它們是打算進行相同類型的剛具有每個等級的不同值的信息的。我知道非虛擬函數的名稱隱藏不是一個好主意。這同樣適用於靜態成員變量嗎?如果是的話有什麼選擇?
你或許應該開始問自己,爲什麼* *您必須在子類的'filter'成員。爲什麼你不能使用基類中的那個?他們是爲了不同的目的?還是他們基本上存儲相同(或相同類型)的數據? –
我在問題中說過,他們存儲的是同一種數據!但不一樣的價值觀 – mkmostafa
,因爲它們只依賴於類的類型,而不是類 – mkmostafa