#include <iostream>
using namespace std;
int value=1;
void func(int *p)
{
p=&value;
}
void func(int **p)。。。。。。。重载
{
*p=&value;
}
int main()
{
int a=3;
int *ptr;
ptr=&a;
cout<<*ptr<<endl;
func(ptr);。。。。。。。。。。。。传的是副本
cout<<*ptr<<endl;
func(&ptr);
cout<<*ptr<<endl;
return 0;
}
、、、、、、、、、、、、、、、、、、
void fun3(int *&p)
{
p=&value;
}
。。。。。。。。。。。。。
fun3(ptr);
cout<<*ptr<<endl;
结果是1,,,参数是指针的引用,传的不是副本而是地址
int & *p是错误的
转载:
作者:*
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
#include <iostream>
using namespace std;
void fun4(int *a)
{
*a=9;
cout<<*a<<endl;
}
int main()
{
int a=3;
fun4(&a);
cout<<a<<endl;
return 0;
}这样传的就不是副本了