読者です 読者をやめる 読者になる 読者になる

Objective-C

宣言プロパティに関して

Objective-Cの宣言プロパティに関して、 宣言プロパティは、アクセッサメソッド定義を簡略化することができます。 通常は、変数の定義とアクセッサメソッドの実装をするのですが、 値の設定と取得しかしないのに書かなければいけないのは、面倒なので、 宣言…

内部メソッドに関して

内部メソッドに関して、 内部で使いたいメソッドを書きたい場合は、 インターフェイスに特に定義しなくとも問題ないです。 外部へ公開するか公開しないか次第で、 インターフェイスへ定義するかしないかが決まります。 あるインターフェイスが下の様な感じだ…

文字列操作に関して

Objective-Cの文字列操作に関して...相変わらず使いづらい。 他の言語と違って、簡単な感じでは、書けないですね。 文字列の連携方法ですが、 NSStringクラスのstringWithFormatメソッドを使うと連結させることができます。 NSString *str = [NSString strin…

クラスの継承

クラスの継承に関してです。 クラスは、別のクラスを継承することができます。 クラス間で、親子関係みたいな感じになります。 親クラスをスーパークラス、子クラスをサブクラスと言います。 それで、実際は、インターフェイスに継承の定義を書きます。 前回…

クラスを作ってみる

前回の構造体の次は、クラスです。 クラスと言っても細かいとことか結構いろいろあるんで、とりあず作ってみることにします。 Objective-Cのクラスは、インターフェイスとその実装でわかれてます。 インターフェイスは、ヘッダファイルなんですけどね。 イン…

構造体

使うか?わからんが構造体です。 クラスがあるから使うかは不明。 データ構造を表す時に使うものです。 定義方法は、下に記載した感じで、データ構造を書いていきます。 typedef struct { int personId; char *personName; }person; それで、どう使うかです…

ポインタ

ポインタですが、慣れが必要かなぁと思っています。 ポインタは、位置情報みたいなものなので、 なんらかの値を扱う場合、変数を使いますが、 その変数は、値がメモリのどこに格納されているか示しているだけです。 値自体がその変数に格納されているわけで…

配列に関して

Objective-Cの配列に関してですが、なんか使いづらい...。 恐らく、int array[ ]みたいなものは、あんまり使わないのかもしれない。 簡単な感じで書くと下の様な感じになるけど...事前にサイズが分かってないといけない。 int array[] = {10, 20, 30}; for (…

関係演算子に関して

制御構文などで使う関係演算子に関してですが、 Objective-Cには、下記の演算子があります。 演算子 == != > >= < <= 値の比較をする時に利用するのでが、 比較した結果は、「0」か「0」以外になります。 「真」の場合は、「0」以外で、「偽」の場…

ユーザ定義関数

ユーザ定義関数に関して、 独自の関数を定義することが可能なのですが、 これもCと同じ感じで記述して行きます。 ユーザ定義関数を作るには、事前にプロトタイプ宣言をする必要があります。 #import <Foundation/Foundation.h> void messagePrint(NSString *message); ← プロトタイプ</foundation/foundation.h>…

NSIntegerとNSUIntegerとか一般的なデータ型について

Objective-Cのデータ型についてですが、C言語と同じように、CPUやOSに依存します。 ざっくり言うと32ビットと64ビットでは、データ長が違うデータ型があります。 shortは2バイトで、intは4バイトになりますが、 long型が、32ビットと64ビットで違ってくるの…

演算子について

Objective-Cの演算子に関して、 一般的なものは、下記に記載したものがあります。 演算子 説明 + 加算演算子 ー 減算演算子 * 乗算演算子 / 除算演算子 % 剰余算演算子 使い方は、他の言語とだいたい同じで、下記に記載したように利用します。 int main(…

Objective-Cはじめてみた

そろそろObjective-Cを勉強しようかなぁと思ってます。 文字列を出力に関してからはじめます。 Objective-Cでは、NSLong関数で、文字列を出力することができます。 NSLong(@"文字列"); Objective-Cの文字列は、実際は、NSStringクラスのインスタンスになりま…