Saya memiliki variabel global yang perlu dibagikan di antara ViewControllers saya.
Di Objective-C, saya bisa mendefinisikan variabel statis, tapi saya tidak bisa menemukan cara untuk mendefinisikan variabel global di Swift.
Apakah Anda tahu cara melakukannya?
swift
global-variables
czzhengkw.dll
sumber
sumber
Jawaban:
Dari panduan pemrograman Swift resmi :
Anda dapat menentukannya dalam file apa pun dan dapat mengaksesnya di
module
mana saja saat ini . Jadi, Anda dapat menentukannya di suatu tempat di file di luar cakupan apa pun. Tidak perlustatic
dan semua variabel global dihitung dengan malas.Anda dapat mengakses ini dari mana saja di modul saat ini.
Namun Anda harus menghindari ini karena variabel Global tidak baik untuk status aplikasi dan terutama alasan bug.
Seperti yang ditunjukkan dalam jawaban ini , di Swift Anda dapat merangkumnya
struct
dan dapat mengaksesnya di mana saja. Anda juga dapat menentukan variabel statis atau konstanta di Swift. Mengenkapsulasi dalamstruct
Anda dapat menggunakan variabel ini di kelas mana pun atau di mana pun
sumber
MyVariables
, jadiMyViewState
sepertinya kesalahan salin / tempel dari stackoverflow.com/a/24868789/1187415 :)Variabel global yang ditentukan di luar metode atau penutupan apa pun dapat dibatasi cakupannya dengan menggunakan kata kunci pribadi.
sumber
jika Anda ingin menggunakannya di semua kelas Anda, Anda dapat menggunakan:
jika Anda ingin menggunakan hanya dalam satu kelas, Anda dapat menggunakan:
sumber