Rumah > pembangunan bahagian belakang > C++ > Apa yang Menyebabkan Ralat 'Rujukan Objek Diperlukan' dan Bagaimana Ia Boleh Diselesaikan?

Apa yang Menyebabkan Ralat 'Rujukan Objek Diperlukan' dan Bagaimana Ia Boleh Diselesaikan?

Barbara Streisand
Lepaskan: 2024-12-27 02:07:10
asal
654 orang telah melayarinya

What Causes the

Memahami Ralat "Rujukan Objek Diperlukan"

Dalam pengaturcaraan berorientasikan objek, ahli bukan statik, seperti pembolehubah contoh dan kaedah, memerlukan contoh objek untuk menjadi diakses. Jika anda cuba mengakses ahli bukan statik ini tanpa membuat objek terlebih dahulu, anda akan menghadapi ralat, "Rujukan objek diperlukan untuk mengakses ahli bukan statik."

Menyelesaikan Ralat dengan Ahli Statik

Satu cara untuk menyelesaikan ralat ini adalah dengan menjadikan ahli yang terjejas statik. Ahli statik dikaitkan dengan kelas itu sendiri, bukan dengan objek individu. Ini bermakna ia boleh diakses tanpa contoh objek.

Sebagai contoh, dalam coretan kod yang anda berikan, kaedah StartClick dan StopClick bukan statik. Untuk membetulkan ralat, anda boleh mengubah suai kaedah ini seperti berikut:

public static void StartClick(object obj, EventArgs args) {}
public static void StopClick(object obj, EventArgs args) {}
Salin selepas log masuk

Walau bagaimanapun, ini akan memperkenalkan keadaan global ke dalam aplikasi anda, yang secara amnya tidak dianggap sebagai amalan yang baik.

Mencipta Objek Instance

Cara lain untuk menyelesaikan ralat adalah dengan mencipta tika kelas. Ini membolehkan anda mengakses ahli bukan statik melalui rujukan contoh.

Sebagai contoh, anda boleh menambah kod berikut sebelum mengakses kaedah StartClick dan StopClick:

MainClass instance = new MainClass();
btn.Clicked += instance.StartClick;
btn_stop.Clicked += instance.StopClick;
Salin selepas log masuk

Dengan mencipta tika daripada MainClass, anda mempunyai rujukan objek yang boleh digunakan untuk mengakses bukan statik ahli.

Kesimpulan

Keputusan sama ada untuk menggunakan ahli statik atau tika objek bergantung pada keperluan khusus aplikasi anda. Jika mengelakkan keadaan global adalah penting, mencipta contoh objek ialah pendekatan pilihan. Ini memberikan enkapsulasi dan kebolehujian yang lebih baik untuk kod anda.

Atas ialah kandungan terperinci Apa yang Menyebabkan Ralat 'Rujukan Objek Diperlukan' dan Bagaimana Ia Boleh Diselesaikan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan