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!