所以我开始学习C ++中的指针。关于将指针传递给函数的主题,我看到了两种不同的可能实现:
1
#include <stdio.h>
void multiplyBy2(int *num);
int main(int argc, char *argv[]) {
int six = 6;
printf("%d\n", six);
multiplyBy2(&six);
printf("%d\n", six);
}
void multiplyBy2(int *num) {
*num *= 2;
}
2。
#include <stdio.h>
void multiplyBy2(int &num);
int main(int argc, char *argv[]) {
int six = 6;
printf("%d\n", six);
multiplyBy2(six);
printf("%d\n", six);
}
void multiplyBy2(int &num) {
num *= 2;
}
这两个在编译和运行时都具有完全相同的输出:
6
12
我的问题是,这些与实现之间有什么区别,并且比另一个更好吗?