成員 '<membername1>' 與基底型別 '<basetypename>' 中為成員 '<membername2>' 所隱含宣告的成員產生衝突,所以不應該宣告為 'Overloads'
更新:2007 年 11 月
衍生類別 (Derived Class) 中的屬性或程序會使用與基底類別 (Base Class) 之隱含成員相同的名稱,並指定 Overloads 關鍵字。
多載用於在同一個類別中定義屬性或程序的多個版本。除非基底類別成員已指定 Overloads,否則您無法定義基底類別成員的其他版本。因為隱含成員不會指定 Overloads,所以編譯器會假設這個屬性或程序會 Shadows 隱含基底類別成員。
Visual Basic 編譯器建立隱含成員,與您宣告的某些程式設計項目相對應。下表摘要說明這些隱含的或虛構的成員。
宣告項目 |
隱含建立的成員 |
---|---|
列舉型別 |
value__ 成員 |
事件 |
add_<eventname> 程序 remove_<eventname> 程序 <eventname>Event 欄位 <eventname>EventHandler 委派 |
屬性 |
get_<propertyname> 程序 set_<propertyname> 程序 |
My.Form 成員、My.WebService 成員,或以 MyGroupCollectionAttribute 屬性標記之類別的成員 |
m_<variablename>Static 變數 <variablename> 屬性 get_<variablename> 程序 set_<variablename> 程序 |
WithEvents 變數 |
_<variablename> 變數 <variablename> 屬性 get_<variablename> 程序 set_<variablename> 程序 |
由於有名稱衝突的風險,因此在對任何已宣告的程式設計項目命名時,應避免使用這些隱含成員所用的格式。例如,您應該避免使用以 get_ 或 set_ 做為開
根據預設,這是一個警告訊息。如需隱藏警告或將警告視為錯誤的詳細資訊,請參閱在 Visual Basic 中設定警告。
錯誤 ID︰BC40023
若要修正這個錯誤
- 請變更屬性或程序的名稱,避免與上表所列出的名稱發生衝突。