读书人

为什么呢?解决思路

发布时间: 2012-03-22 17:43:57 作者: rapoo

为什么呢?
#include <iostream>

int func1(int& b)
{
return 0;
}

void func2()
{
int bbb = 3;

func1(bbb); //对
//func1(&bbb); //错
}

int main()
{
func2();
return 0;
}

[解决办法]

C/C++ code
int func1(int& b) //楼主误会了,这个函数的参数是个引用,而并非是指针{    return 0;}
[解决办法]
int func1(int& b)
形参的意思 是接收一个整型值的引用。

&b表示 b的地址。当然不能这么传啦。

lz多看看引用的知识。
[解决办法]
&bbb,这是取地址
[解决办法]
既然func1的参数应该不是指针,那么调用它的时候就不能传地址当int func3(int *b)这样定义的时候,你可以这样调用 func3(&bbb);
[解决办法]
找本书看看引用和指针的区别
[解决办法]
func1((int&)bbb),这样可以
[解决办法]
形参就是让定义的这个形参直接等于传过去的实参。。。。

读书人网 >C++

热点推荐