[memo]Objective-C、XCode、Mac等のメモ
XcodeによるObjective-C入門
を読了
うん、物足りない。
XCodeとInterfaceBuilderがまったく初めてだったので、最初にちょっと触れる程度には良いんだが、
言語の詳しい部分の説明が無いので(セレクタの説明が無かった)、消化不良
(C言語の内容もあるため、半分くらい読み飛ばした)
先にネットで見てたページの方が、内容的には充実してたりする
以下、自分用のメモ
・Mac環境では初期状態でカレントディレクトリがコマンドの検索パスに含まれない
カレントにある実行ファイルの実行には"./"が必用
・「#import」インクルードファイルの二重インクルードなどを防いでくれる
#define、#ifdefなどに展開されてるのかな?
・「#import」でインクルードするファイルが自作のファイルの場合は<>ではなく""を使う
意味があるかはよくわからない
・C++スタイルの一行コメントは使用可能
・文字列には@をつけるとNSStringのインスタンスになる。
これで使用できるのは7bitASCII文字のみ、日本語はサポート外
→と書いてたけど、試してみたらビルドが通り、実行もできた。
環境により駄目な場合があるのかな?
・"\"とバックスラッシュが別の文字コードが割り当てられてるようなので注意
・NSLogのprintfの違い
行頭に、日付、プログラム名が入る
自動的に改行が入る
%@でオブジェクトの内容を出力できる(descriptionメソッドが呼ばれる)
JavaのtoStringと似たような使い方
コーディングルール的に、descriptionは常にオーバーライドした方が良いのかな?
・直接入力などの切り替えはコマンド+スペース
・++、--は使用可能、前置、後置の場合の扱いはC++と同じ
・XCodeではint hoge = 0.5;としても値が切り捨てられる警告が出ないので注意
・デバッグでの引数設定は、プロジェクト左側のツリー内の
「実行可能ファイル」のコンテキストメニュー「情報をみる」
で表示される「引数」のタブで設定する
・Objective-Cじゃないけど、XCodeの設定で
Effective C++に対する違反を警告として表示する機能があった
うん、物足りない。
XCodeとInterfaceBuilderがまったく初めてだったので、最初にちょっと触れる程度には良いんだが、
言語の詳しい部分の説明が無いので(セレクタの説明が無かった)、消化不良
(C言語の内容もあるため、半分くらい読み飛ばした)
先にネットで見てたページの方が、内容的には充実してたりする
以下、自分用のメモ
・Mac環境では初期状態でカレントディレクトリがコマンドの検索パスに含まれない
カレントにある実行ファイルの実行には"./"が必用
・「#import」インクルードファイルの二重インクルードなどを防いでくれる
#define、#ifdefなどに展開されてるのかな?
・「#import」でインクルードするファイルが自作のファイルの場合は<>ではなく""を使う
意味があるかはよくわからない
・C++スタイルの一行コメントは使用可能
・文字列には@をつけるとNSStringのインスタンスになる。
これで使用できるのは7bitASCII文字のみ、日本語はサポート外
→と書いてたけど、試してみたらビルドが通り、実行もできた。
環境により駄目な場合があるのかな?
・"\"とバックスラッシュが別の文字コードが割り当てられてるようなので注意
・NSLogのprintfの違い
行頭に、日付、プログラム名が入る
自動的に改行が入る
%@でオブジェクトの内容を出力できる(descriptionメソッドが呼ばれる)
JavaのtoStringと似たような使い方
コーディングルール的に、descriptionは常にオーバーライドした方が良いのかな?
・直接入力などの切り替えはコマンド+スペース
・++、--は使用可能、前置、後置の場合の扱いはC++と同じ
・XCodeではint hoge = 0.5;としても値が切り捨てられる警告が出ないので注意
・デバッグでの引数設定は、プロジェクト左側のツリー内の
「実行可能ファイル」のコンテキストメニュー「情報をみる」
で表示される「引数」のタブで設定する
・Objective-Cじゃないけど、XCodeの設定で
Effective C++に対する違反を警告として表示する機能があった