

ざっと思いつく方法としては、  
・ENUMを使う  
・Defineクラスをつくる  
です。

どのようにするのが、良さそうでしょうか？


CC BY-SA 3.0
2015-01-21T03:33:59.377
4949
2015-08-22T04:25:24.477
2772
question
swift
Swiftでアプリ全体で利用できる定数は、「どこに」「どのように」書くと良いか？


「let」を付与すれば、なんでも定数として扱えると思います。  
C言語の流儀を、いったん忘れないと、感覚的にしっくりこないかもしれませんね。

「どこに」に関しては、クラスや構造体などの実装の外側に、独立して、ということになろうかと。


CC BY-SA 3.0
2015-01-21T03:51:07.287
4951
2015-01-21T03:51:07.287
7362
4949
answer


専用のクラスを作るのであれば、structを使うほうが良いかと思います。

Swiftのclassは値を保持するクラス定数を持つことが出来ませんが、structであれば可能なので。

[code]

    // 問題なくコンパイルできる
    struct ConstStruct {
        static let nameMax = 32
        static let imageMargin: CGFloat = 10.0
        static let defaultName = "NO NAME"
    }
    
    // コンパイルエラーになる
    class ConstClass {
        static let nameMax = 32
        static let imageMargin: CGFloat = 10.0
        static let defaultName = "NO NAME"
    }
    
[/code]


CC BY-SA 3.0
2015-01-21T05:23:47.097
4961
2015-01-22T04:23:09.503
2015-01-22T04:23:09.503
7459
7459
4949
answer