2011-01-20 8 views
1

これまではObjective-CとCocoa Frameworksに非常に感銘を受けましたが、私はCLLocationCoordinate2Dの配列を作成するための最良の方法を少し混乱させています。 polylineWithCoordinates:count:これは私が配列を設定する方法であると確信しています。mallocされた配列にCLLocationCoordinate2Dを設定する

NSUInteger numPoints = [locationData count]; 
CLLocationCoordinate2D *arrayPtr = malloc(numPoints * sizeof(CLLocationCoordinate2D)); 

しかし、私はそれぞれの場所にアクセスする方法がわからない、私はarrayPtr [I]を使うことができると思ったが、私はそれが正常に動作するように見えることはできません。

for(NSUInteger counter=0; counter<numPoints; counter++) { 
    arrayPtr[counter] = [[locationData objectAtIndex:counter] coordinate]; 
} 

EDIT:

私はそれが私がデバッガで間違ったメモリを見ていた、今働いていますが、もう一つの方法は、私はNSValueを使用してNSArrayの中で値を符号化しようとしなかった(たぶんmalloc関数なし)があります、私だけではなく、C型の配列:(任意の代替方法が最も歓迎されるであろうが必要であることを見つけるために有効である必要があり

答えて

1

を - 。?あなたはどのようなエラーを取得している

より良いアプローチはCFArrayを使用するのが良いかもしれませんmallocを手動で管理する代わりに。

+0

Hum私はそれが古い質問だと知っていますが、CFArrayクラスの詳細を教えてください。 corefoundationライブラリをインポートした後でも、私はまだ_Unknown型のCFArrayを持っています。つまり、 'CFArray * myArray;'を宣言するとNSArray?_を意味しますか?ありがとう。 – Lucien

+0

ドキュメントは2〜3行よりも優れています。ここに入力する時間があります。それを読むと、助けになるでしょう。 –

関連する問題