Rumah >pembangunan bahagian belakang >Golang >Mengapakah Go membuang ralat 'tiada pembolehubah baharu di sebelah kiri :=' semasa menetapkan semula nilai kepada tatasusunan?

Mengapakah Go membuang ralat 'tiada pembolehubah baharu di sebelah kiri :=' semasa menetapkan semula nilai kepada tatasusunan?

Linda Hamilton
Linda Hamiltonasal
2024-11-13 08:34:02383semak imbas

Why does Go throw an

Penugasan Semula Tatasusunan: "tiada pembolehubah baharu di sebelah kiri :="

Dalam coretan kod Go yang disediakan, ralat berlaku semasa cuba menetapkan semula nilai kepada pembolehubah 'myArray' pada baris kedua:

myArray := [...]int{12, 14, 26}
myArray := [...]int{11, 12, 14} // error: no new variables on left side of :=

Ralat ini berpunca daripada penggunaan := dalam tugasan kedua. Apabila anda mengisytiharkan pembolehubah menggunakan := buat kali pertama, seperti dalam pernyataan pertama, ia mencipta pembolehubah baharu dan memberikannya nilai. Walau bagaimanapun, apabila anda cuba menetapkan semula nilai kepada pembolehubah sedia ada menggunakan :=, ia menganggapnya sebagai percubaan untuk mengisytiharkan pembolehubah baharu, yang tidak dibenarkan.

Penyelesaian adalah untuk mengalih keluar := daripada baris tugasan kedua dan sebaliknya gunakan operator penugasan standard =:

myArray = [...]int{11, 12, 14}

Sintaks : ditujukan khusus untuk pengisytiharan awal dan penetapan pembolehubah. Selepas pembolehubah diisytiharkan, penugasan semula hendaklah dilakukan menggunakan operator =.

Atas ialah kandungan terperinci Mengapakah Go membuang ralat 'tiada pembolehubah baharu di sebelah kiri :=' semasa menetapkan semula nilai kepada tatasusunan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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