iTunes Uのスタンフォード大学のiPhoneコースで手を試していますが、ポインターについて少し混乱しています。最初の課題では、このようなことをしてみました
NSString *processName = [[NSProcessInfo processInfo] processName];
NSInteger *processID = [[NSProcessInfo processInfo] processIdentifier];
エラーが発生しましたが、やみくもにいじった後、問題の原因はNSInteger行の*であることがわかりました。
だから私は明らかに何が起こっているのか理解していません。私はそれがどのように機能すると思うかを説明します、そしておそらく誰かが欠陥を指摘するのに十分親切でしょう。
Web開発とは異なり、私は今、Web開発よりもメモリについて心配する必要があります。したがって、変数を作成すると、どこかに少しのメモリが割り当てられます(私が想定しているRAM)。変数を渡す代わりに、メモリのそのビットへのポインタを渡します。また、ポインタは変数名の前に*を付けることで宣言されます。
私が正しいと仮定すると、NSIntegerに対してそれを行う必要がないのはなぜですか?