Baca dalam bahasa Inggris

Bagikan melalui


Anggota '<membername1>' secara implisit menyatakan '<implicitmembername>', yang bertentangan dengan anggota yang secara implisit dinyatakan untuk anggota '<membername2>' dalam kelas dasar '<baseclassname>'

Anggota '<membername1>' secara implisit menyatakan '<implicitmembername>', yang bertentangan dengan anggota yang secara implisit dinyatakan untuk anggota '<membername2>' dalam '<baseclassname>' kelas dasar. Jadi anggota harus dinyatakan 'Bayangan'.

Seorang anggota kelas turunan menghasilkan anggota implisit dengan nama yang sama dengan anggota implisit dari kelas dasar. Karena anggota implisit tidak menentukan Kelebihan beban, kompilator mengasumsikan bahwa anggota ini Membayangi anggota kelas dasar implisit. Kode Anda lebih mudah dibaca, dan kurang rentan terhadap kesalahan, jika Anda secara eksplisit menentukan Shadows kata kunci untuk anggota ini.

Kompilator Visual Basic membuat anggota implisit yang sesuai dengan elemen pemrograman tertentu yang Anda deklarasikan. Tabel berikut merangkum anggota implisit, atau sintetis ini.

Elemen yang dideklarasikan Anggota yang dibuat secara implisit
Enumeration value__ anggota
Kejadian add_<eventname> prosedur

remove_<eventname> prosedur

<eventname>Event bidang

<eventname>EventHandler delegasi
Properti get_<propertyname> prosedur

set_<propertyname> prosedur
My.Form anggota, My.WebService anggota, atau anggota kelas yang ditandai dengan atribut MyGroupCollectionAttribute m_<variablename>Static variabel

Properti <variablename>

get_<variablename> prosedur

set_<variablename> prosedur
WithEvents variabel _<variablename> variabel

Properti <variablename>

get_<variablename> prosedur

set_<variablename> prosedur

Karena risiko konflik nama, Anda harus menghindari penamaan elemen pemrograman yang dideklarasikan menggunakan bentuk yang sama dengan salah satu anggota implisit ini. Misalnya, Anda harus menghindari nama elemen apa pun yang dimulai dengan get_ atau set_.

Secara default, pesan ini adalah peringatan. Untuk informasi selengkapnya tentang menyembunyikan peringatan atau memperlakukan peringatan sebagai kesalahan, lihat Mengonfigurasi Peringatan di Visual Basic.

ID Kesalahan: BC40018

Untuk memperbaiki kesalahan ini

  • Jika Anda berniat untuk menyembunyikan, atau membayangi, anggota kelas dasar implisit, sertakan kata kunci Bayangan dalam deklarasi anggota kelas turunan.

  • Jika Anda tidak berniat untuk membayangi anggota kelas dasar implisit, ubah nama anggota kelas turunan untuk menghindari konflik dengan nama yang tercantum dalam tabel sebelumnya.

Lihat juga