类中的符号!
在类中总看到如:
class ostream
{
public:
ostream & flush();
sostream & seekp(long);
};
其中的&表示什么意思啊?
谢谢!!
[解决办法]
在这个地方是引用
[解决办法]
返回一个引用
[解决办法]
这个函数返回的是一个引用.
但是注意引用不要renturn 局部变量的引用
[解决办法]
表示引用
比如
int& fun(int);
void fun(double&);
和它前面的型别结合在一起 表示该型别对象的一个引用
[解决办法]
本质上说,引用和指针类似,都是对变量地址的操作,声明的符号是&, 可能主要是对这个符号陌生所以不理解。简单的说,引用是变量的“别名”,对变量引用的操作结果和对变量本身操作一样。一个简单的例子,
...
class obj
{
public:
obj(){num=8;}
int getnum();
int & add(int a);
private:
int num;
};
int obj::getnum()
{
return num;
}
int & obj::add(int a)
{
num +=a;
return num;
}
int main()
{
obj test;
int & aRef =test.add(8);
cout < < "result from ref: " < <aRef < <endl;
cout < < "result from getnum(): " < < test.getnum() < <endl;
return 0;
}
结果:
result from ref:16
result from getnum():16