Rumah > pembangunan bahagian belakang > C++ > Mengapa Visual Studio 2015 Memerlukan \'&\' untuk Mencipta Penunjuk kepada Fungsi Ahli?

Mengapa Visual Studio 2015 Memerlukan \'&\' untuk Mencipta Penunjuk kepada Fungsi Ahli?

Mary-Kate Olsen
Lepaskan: 2024-11-03 03:50:02
asal
439 orang telah melayarinya

Why Does Visual Studio 2015 Require

Sintaks Bukan Standard dalam Visual Studio 2015: Menggunakan '&' untuk Penunjuk kepada Ahli

Masalah

Apabila cuba mengakses fungsi ahli dalam C tanpa menggunakan sintaks panggilan fungsi, Visual Studio 2015 menghadapi ralat: "sintaks bukan standard; gunakan '&' untuk mencipta penuding kepada ahli."

Penjelasan

Dalam Visual Studio, fungsi bukan ahli boleh digunakan dalam ungkapan tanpa menggunakan sintaks panggilan fungsi. Walau bagaimanapun, untuk fungsi ahli, ini tidak dibenarkan. Untuk mendapatkan penunjuk kepada fungsi ahli, anda perlu menggunakan operator '&'.

Resolusi

Penyelesaian kepada ralat adalah dengan meletakkan awalan nama fungsi ahli yang bermasalah dengan '& ' operator, mencipta penunjuk kepada fungsi ahli. Dengan melakukan ini, fungsi boleh digunakan dalam ungkapan tanpa sintaks panggilan fungsi.

Contoh

Pertimbangkan definisi kelas berikut:

<code class="cpp">class TicTacToe {
public:
    void player1Move(string coordX);
};</code>
Salin selepas log masuk

Untuk mengakses ahli player1Move fungsi tanpa menggunakan sintaks panggilan fungsi, gunakan penuding berikut kepada ahli:

<code class="cpp">TicTacToe::&player1Move;</code>
Salin selepas log masuk

Penunjuk kepada ahli ini kini boleh digunakan dalam ungkapan tanpa memanggil fungsi secara eksplisit:

<code class="cpp">TicTacToe Board;
(Board.*player1Move)("some_coordinate");</code>
Salin selepas log masuk

Oleh menggunakan operator '&', Visual Studio boleh mentafsir maksud dengan betul dan mengelakkan ralat sintaks bukan standard.

Atas ialah kandungan terperinci Mengapa Visual Studio 2015 Memerlukan \'&\' untuk Mencipta Penunjuk kepada Fungsi Ahli?. 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