传递引用和使用C指针符号有什么区别?
void some_function(some_type& param)
和
void some_function(some_type *param)
谢谢
传递引用和使用C指针符号有什么区别?
void some_function(some_type& param)
和
void some_function(some_type *param)
谢谢
当您在子程序调用中传递变量的指针时,该变量的地址被传递给子程序。为了在子程序中访问变量,必须解除引用指针。
当您传递变量的引用时,编译器会在将变量传递到子程序时获取变量的地址并在子程序中解除引用变量。
基本上,您可以像处理自己的对象一样处理安全指针。
std::vector<int> myVec; myVec.front();
... 当你后悔时,你会发现 std::vector<T>::front
没有抛出 out_of_range 异常! - Matthieu M.