Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa saya mendapat "diisytiharkan tetapi tidak digunakan"?

Mengapa saya mendapat "diisytiharkan tetapi tidak digunakan"?

王林
王林ke hadapan
2024-02-08 23:36:32685semak imbas

Mengapa saya mendapat diisytiharkan tetapi tidak digunakan?

php editor strawberry Saya menghadapi masalah pengaturcaraan biasa: mengapa saya mendapat amaran "diisytiharkan tetapi tidak digunakan"? Dalam proses menulis kod, kami mungkin mentakrifkan beberapa pembolehubah atau fungsi tetapi akhirnya tidak menggunakannya, yang akan mencetuskan amaran ini. Walaupun amaran ini mungkin kelihatan tidak berbahaya, ia sebenarnya memberi amaran kepada kami tentang kemungkinan masalah dalam kod kami. Artikel ini akan menerangkan sebab amaran ini muncul dan cara menanganinya, mari kita ketahui bersama!

Kandungan soalan

Saya sedang dalam "perjalanan" dan untuk salah satu latihan saya menulis fungsi ini:

func Sqrt(x float64) float64 {
    z := 1.0
    var prev_z float64
    for (z - prev_z) != 0 {
        prev_z := z
        z -= (z*z - x) / (2*z)
        fmt.Println(z)
    }
    return z
}

Mengapa ini memberi saya "prev_z diisytiharkan tetapi tidak digunakan"?

Penyelesaian

Kerana anda mengisytiharkan pembolehubah jenis float64 (prev_z) di dalam gelung for. Selepas itu, anda menggunakan := pengendali pengisytiharan pendek (baris 5) sekali lagi untuk memulakan pembolehubah baharu dengan nama dan jenis yang sama.

Ini kod yang betul:

func Sqrt(x float64) float64 {
z := 1.0
var prev_z float64
for (z - prev_z) != 0 {
    prev_z = z
    z -= (z*z - x) / (2*z)
    fmt.Println(z)
}
return z

}

Atas ialah kandungan terperinci Mengapa saya mendapat "diisytiharkan tetapi tidak digunakan"?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam