值参数和引用参数的区别?这个问题是面试官在我面试的时候问的。有人能告诉我用例子很容易解释的确切区别吗?并且引用参数和指针参数是一回事吗?
谢谢
最佳答案
调用者看不到对值参数的更改(也称为“按值传递”)。
调用者可以看到对引用参数的更改(“通过引用传递”)。
C++ 示例:
void by_value(int n) { n = 42; }
void by_ref(int& n) { n = 42; }
void also_value(int const& n); // Even though a reference is used, this is
// semantically a value parameter---though there are implementation
// artifacts, like not being able to write "n = 42" (it's const) and object
// identity (&n here has different ramifications than for by_value above).
指针的一种用途是在不使用特殊引用概念的情况下实现“引用”参数,某些语言(例如 C)没有这种概念。 (当然,您也可以将指针本身视为值。)
关于oop - 值参数和引用参数的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2207179/