最初の質問:
多くの場合、ポインタを使用した関数呼び出しを介して、あるオブジェクトの参照を別のオブジェクトに渡します。例:
int num =25;
int *num1Ptr=#
int *num2Ptr=NULL;
void assinNum (int *numPtr){
num2Ptr = numPtr; ////we copy the value (address) of the num1Ptr pointer to num2Ptr
}
私の質問は、そのようなメソッドが非常に頻繁に呼び出される場合、ポインタコピーのかなりのオーバーヘッドを期待できますか?
2番目の質問:
次のシナリオでは、渡されたnumPtrが指すメモリアドレスの値をnum2Ptrが指すメモリアドレスにコピーすることを意味しますか?はいの場合、値を渡すのと同じですか?
int num =25;
int *num1Ptr=#
int *num2Ptr=NULL;
void assinNum (int *numPtr){
*num2Ptr = *numPtr; ////num2Ptr points to the same value in the memory pointed by numPtr argument.
}
最初の質問の更新:
大きなオブジェクト(プリミティブではない)へのポインターの結果はどうなりますか?