ファクトリ メソッドで割り当てているメモリに興味があります。アイデアは、ファイルを読み込み、解析されていない単一の CSV 行をファクトリ メソッドに送信してオブジェクトをインスタンス化することです。
-(id)initWithCSV:(NSString *)csv
{
if(self = [super init])
{
NSArray *values = [csv componentsSeparatedByString:@","];
self.city = [values[0] stringByTrimmingCharactersInSet:
[NSCharacterSet whitespaceCharacterSet]];
self.country = [values[1] stringByTrimmingCharactersInSet:
[NSCharacterSet whitespaceCharacterSet]];
self.latitude = [values[2] doubleValue];
self.longitude = [values[3] doubleValue];
}
return self;
}
私の最初の質問は、これはメモリ管理についてどうですか? ARCがどのように機能するかについては完全にはわかりません。values
メソッドを終了するとすぐに配列が破棄されますよreturn self;
ね?
2 番目の質問...ここでやろうとしていることを達成するためのより効率的な方法はありますか?