在C ++中,通过指针传递比通过引用传递有好处吗?
指针可以接收空参数,而引用则不能。如果要传递“无对象”,则只能使用指针。
通过指针显式传递允许我们查看对象是通过引用传递还是在调用站点传递值。
这些是通过指针传递和通过引用传递的简单示例-
通过指针
示例
#include <iostream>
using namespace std;
void swap(int* a, int* b) {
int c = *a;
*a= *b;
*b = c;
}
int main() {
int m =7 , n = 6;
cout << "Before Swap\n";
cout << "m = " << m << " n = " << n << "\n";
swap(&m, &n);
cout << "After Swap by pass by pointer\n";
cout << "m = " << m << " n = " << n << "\n";
}输出结果
Before Swap m = 7 n = 6 After Swap by pass by pointer m = 6 n = 7
通过参考
示例
#include <iostream>
using namespace std;
void swap(int& a, int& b) {
int c = a;
a= b;
b = c;
}
int main() {
int m =7 , n = 6;
cout << "Before Swap\n";
cout << "m = " << m << " n = " << n << "\n";
swap(m, n);
cout << "After Swap by pass by reference\n";
cout << "m = " << m << " n = " << n << "\n";
}输出结果
Before Swap m = 7 n = 6 After Swap by pass by reference m = 6 n = 7
热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西