masalibの日記

システム開発、運用と猫の写真ブログです

【Objective-C】PrefixHeader.pchを使う

Objective-C初心者のメモです。

環境について

Xcode 15.3 Build version 15E204a

PrefixHeader.pch とは

システムが大きくなると Define という定数をつくります 当たり前ですが class 単位ではなくアプリ全体で使います。 Objective-C だと PrefixHeader.pch というものを使いかならず読み込ませるようにします

作成方法

プロジェクトファイルの直下に「PrefixHeader.pch」を追加する。

新規ファイルを追加して「Filter」に「PCH」を入力すると選択させます

対象 TARGET の Bulid Settings の PrefixHeader で上記ファイルのパスを指定する。

上記「Prefix Header」を押下して

$(SRCROOT)/$(PROJECT)/PrefixHeader.pch

と設定する。

define を設定する。

以下のような define のファイルを作成する

//
//  CommonDefine.h
//
//  Created by Masalib on 2024/03/16.
//  Copyright (c) 2024年 Masalib Inc. All rights reserved.
//

#ifndef CommonDefine_h
#define CommonDefine_h

#define MAX_HISTORIES   100
#define MAX_FAVORITES   50

//-- お問い合わせメアド
#define INQUIRY_MAIL_ADDRESS    @"masalib@gmail.com"


#endif

PrefixHeader.pch を修正する。

作った define ファイルを読み込ませる

//
//  PrefixHeader.pch
//

#ifndef PrefixHeader_pch
#define PrefixHeader_pch

// Include any system framework and library headers here that should be included in all compilation units.
// You will also need to set the Prefix Header build setting of one or more of your targets to reference this file.

#import "CommonDefine.h"


#endif /* PrefixHeader_pch */

Objective-C で使う。

NSLog(@"問い合わせアドレスは%@", INQUIRY_MAIL_ADDRESS);