タグ

Objective-Cとconstに関するBowz13のブックマーク (3)

  • Objective-Cで定数を定義する - Qiita

    ヘッダーファイルにおいて、#define(マクロ)を使って、(公開/非公開に関わらず)全ての定数にプレフィックスkをつけて定義しているコードを見かけることがあるが、下記理由から個人的にはあまり良くないのではないかと思っている。 型情報がない ヘッダーファイルインポート条件によっては、名前衝突により開発者が意図しないファイルにおいても定数置換が行われてしまう危険性がある 実際のところ、私は下記のように定数定義を行っている。 外部に公開する定数 extern constを付与 定数にはプレフィックスとしてクラス名をつける(名前衝突を避けるため) 内部でのみ使用する定数 static constを付与 定数にはプレフィックスとしてkをつける(よく見かけるパターン) コーディング例 以下は、BLGClassAクラスにおいて外部に公開する定数を定義、BLGClassBクラスにおいて内部で使用する定数

    Objective-Cで定数を定義する - Qiita
    Bowz13
    Bowz13 2014/03/18
    外部に公開する定数 - extern constを付与 - 定数にはプレフィックスとしてクラス名をつける(名前衝突を避けるため) 内部でのみ使用する定数 - static constを付与 - 定数にはプレフィックスとしてkをつける
  • よく使う数値や文字列をhファイルにまとめる。 - Object for cutie

    iPhoneの幅は320なので、コード内にこの様に書けますが、、 self.beforeX = 320; よく使う数値や文字列はできればハードコーディングをしたくないです。 こんな感じに使えると分かりやすいし、定数化してあるので後で変更があっても楽です。 self.beforeX = IPHONE_WIDTH; 以下手順のメモです。 まず「New File」からhファイルを作ります。 名前は定数とわかるConst.h等をつけておきます。 ファイルに例えばこんな感じにまとめます。 /**定数を定義します。 */ #define IPHONE_WIDTH 320 #define IPHONE_HEIGHT 480 #define MAX_PAGE 10 このまま定数を使う予定のmファイルに#importしても定数を使えますが、 面倒なのとインポートの重複をさけたいので、 Supporting

    よく使う数値や文字列をhファイルにまとめる。 - Object for cutie
  • "sending 'const NSString *' to parameter of type 'NSString *' discards qualifiers" warning

    I have Constants NSString, that I want to call like: [newString isEqualToString:CONSTANT_STRING]; Any wrong code here? I got this warning: sending 'const NSString *' to parameter of type 'NSString *' discards qualifiers How should these be declared?

    "sending 'const NSString *' to parameter of type 'NSString *' discards qualifiers" warning
  • 1