コードで使用するメモリをできるだけ少なくしようとしています。カスタム クラス オブジェクトをメソッドに送信する 2 つの方法を試しました。これら2つのアプローチに違いがあるかどうかはわかりません。もちろん、それぞれ独自のクラス変数とメソッドを持つClass1とClass2の 2 つのクラスがあるとします。
すべてのコードはClass1で書かれています
アプローチ 1:
Class2 *class2Object = [[Class2 alloc] init];
[self doSomething: class2Object];
[class2Object release];
-(void) doSomething: (Class2 *) var {
int a = var.a;
}
アプローチ 2:
Class2 *class2Object = [[Class2 alloc] init];
[self doSomething: &class2Object];
[class2Object release];
-(void) doSomething: (Class2 **) var {
int a = var->a;
}
これら 2 つの方法にパフォーマンスの違いはありますか? 2 番目のアプローチはまったく無意味ですか? アプローチ 1 ではドット表記を使用できるのに、アプローチ 2 では -> を使用する必要があるのはなぜですか?
ありがとう。