Pertama sekali, izinkan saya bertanya soalan
Dikatakan dalam buku dan dalam talian bahawa selepas menambah statik pada pembolehubah, skop adalah fail semasa, dan tanpa menambah skop, ia adalah keseluruhan projek
Adakah ini bermakna pembolehubah dengan tambahan statik hanya boleh digunakan dalam fail ini?
Saya menggunakan fail untuk menyimpan pembolehubah global Saya perlu menggunakan pembolehubah global ini di beberapa tempat Menurut buku itu, ia tidak boleh statik, tetapi ia akan muncul
错误 LNK2005 1 "XXX" (XXX) 已经在 XXX
Saya menambah statik dan tiada masalah
Saya menggunakan VS2017
Sila jelaskan masalah ini, bolehkah saya menggunakan kaedah ini untuk menyimpan situasi global?
Adakah ini bermakna pembolehubah yang ditambah dengan statik hanya boleh digunakan dalam fail ini? Ya.
Anda boleh menggunakan pembolehubah global mengikut cara yang anda mahukan dalam kod biasa, tetapi dalam projek sebenar, pembolehubah global boleh digunakan selagi anda boleh, ingat ini. Jadi pendekatan anda untuk "meletakkan semua pembolehubah global dalam satu fail" tidak digalakkan.
Laporan ralat anda sepatutnya disebabkan oleh definisi semula Pembolehubah global ditakrifkan semula semasa proses pautan obj, kerana pembolehubah global ialah atribut pautan luaran, yang boleh dilihat oleh semua fail.
Fail mana yang memerlukan pembolehubah ini, anda boleh menjadikannya statik Jika fail lain memerlukan nilai pembolehubah ini, anda boleh meletakkan pembolehubah ini ke dalam kelas untuk menjadikannya pembolehubah ahli statik kelas, dan kemudian masukkan fail secara langsung, A:: x rujukan Itu sahaja.