在C++中可以a->b()->c()这样调用吗?
答案:2 悬赏:60 手机版
解决时间 2021-02-23 13:00
- 提问者网友:浩歌待明月
- 2021-02-23 10:11
a是一个类里面有b(),b()的返回值是一个类里面有c(),
最佳答案
- 五星知识达人网友:纵马山川剑自提
- 2021-02-23 10:31
可以。
class d
{
public:
int c()
{
return 1;
}
};
class a
{
public:
d b()
{
return d();
}
};
int main()
{
a test;
test.b().c();
return 0;
}
class d
{
public:
int c()
{
return 1;
}
};
class a
{
public:
d b()
{
return d();
}
};
int main()
{
a test;
test.b().c();
return 0;
}
全部回答
- 1楼网友:孤老序
- 2021-02-23 11:25
用引号包含的内容是直接输出到屏幕的,例如上面的cout<<"a+b=";这样你在屏幕上就会看到a+b=这几个字符,然后再cout<<c;就接着输出c的值,连起来就是一个等式a+b=c(用c的值替换掉)。
可以不写cout<<"a+b=";
这样就不会看到a+b=这个字符,只会看到c的值。
另外ostream重载了<<操作符,它输出完后会返回它自己,所以可以继续使用<<操作符。
例如上面的代码也可以合成一句:
cout<<"a+b="<<c;//首先会处理第一个<<操作符,输出a+b=,然后会返回cout,正好和后面的<<操作符结合输出c的值,然后再返回cout,所以如果愿意,后面还可以继续接<<操作符。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯