Ralat: Meminta Ahli dalam Jenis Bukan Kelas 'Jenis Bukan Kelas'
Apabila mengisytiharkan objek dalam C , adalah penting untuk menggunakan sintaks yang betul untuk kedua-dua pembina. Dalam kod yang disediakan, percubaan untuk mencipta objek menggunakan pembina tanpa hujah mengakibatkan ralat:
Foo foo2();
Sintaks ini tidak betul kerana ia menyerupai pengisytiharan fungsi, menyebabkan pengkompil mentafsirkannya sedemikian . Sintaks yang betul untuk pengisytiharan objek menggunakan pembina tanpa argumen ialah:
Foo foo2;
Dengan mengalih keluar kurungan, pengkompil akan mengenali foo2 dengan betul sebagai objek kelas Foo.
Sebagai alternatif, jika anda ingin menggunakan kurungan untuk kejelasan, pastikan hujah pembina adalah disertakan:
Foo foo2(1); // Explicitly pass the default argument of 1 to the no-argument constructor
Atas ialah kandungan terperinci Sintaks Pembina C: Mengapakah `Foo foo2();` Menyebabkan Ralat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!