Perplexity of Static Initialization Order Fiasco
Di alam C , "static initialization order fiasco" (SIOF) boleh memperkenalkan rumit kerumitan ke dalam pemahaman kod. Contoh kod berikut menggambarkan fenomena ini:
// file1.cpp extern int y; int x = y + 1; // file2.cpp extern int x; int y = x + 1;
Pertanyaan:
Adakah coretan kod ini mempamerkan ciri-ciri berikut?
Respons:
Piawaian C (3.6.2 "Inisialisasi objek bukan tempatan" ) memberikan pandangan tentang langkah-langkah permulaan:
Oleh itu, jawapan kepada pertanyaan 4 ialah x menerima nilai lalai 0 semasa permulaan.
Atas ialah kandungan terperinci Bagaimanakah C Menangani Fiasco Perintah Permulaan Statik dalam Senario dengan Ketergantungan Pekeliling?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!