在为函数提供原始变量时,有什么更好的做法:
unsigned long x = 4;
void func1(unsigned long& val) {
val = 5;
}
func1(x);
或:
void func2(unsigned long* val) {
*val = 5;
}
func2(&x);
IOW:有什么理由选择一个而不是另一个?
最佳答案
我的经验法则是:
如果您想对指针进行指针运算(例如,递增指针地址以逐步遍历数组)或必须传递 NULL 指针,请使用指针。
否则使用引用。
关于c++ - 指针与引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/114180/