鱼C论坛

 找回密码
 立即注册
查看: 742|回复: 10

[已解决]代码中的函数部分看不懂

[复制链接]
发表于 2020-3-31 20:00:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. #include<iostream>
  2. class Complex   //complex表示“复数”
  3. {
  4. public:
  5.         Complex();
  6.         Complex(double r,double i);
  7.         Complex complex_add(Complex &d);
  8.         void print();
  9. private:
  10.         double real;
  11.         double imag;
  12. };
  13. Complex::Complex()
  14. {
  15.         real = 0;
  16.         imag = 0;
  17. }
  18. Complex::Complex(double r,double i)
  19. {
  20.         real = r;
  21.         imag = i;
  22. }
  23. Complex Complex::complex_add(Complex &d)
  24. {
  25.         Complex c;
  26.         c.real = real + d.real;
  27.         c.imag = imag + d.imag;
  28.         return c;
  29. }
  30. void Complex::print()
  31. {
  32.         std::cout<<”(”<<real<<”,”<<imag<<”i)\n”;
  33. }
  34. int main()
  35. {
  36.         Complex c1(3,4),c2(5,-10),c3;
  37.         c3 = c1.complex_add(c2);
  38.         std::cout<<”c1=”;
  39.         c1.print();
  40.         std::cout<<”c2=”;
  41.         c1.print();
  42.         std::cout<<”c1+c2=”;
  43.         c3.print();
  44.         return 0;
  45. }
复制代码

Complex Complex::complex_add(Complex &d)部分的函数体是实现“虚部与虚部相加,实部与实部相加”的功能这我知道
但是c.real是什么意思啊?c引用了real方法?可real不是个变量吗?
还有在main函数中是如何把这一功能实现的
哪位大神能给解释下啊
最佳答案
2020-3-31 21:18:11
它访问的就是成员变量,因为是在类自己的作用域中,可以访问私有数据的,出了类作用域就只能访问公有成员
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-3-31 20:19:15 | 显示全部楼层
但是c.real是什么意思啊?c引用了real方法?可real不是个变量吗?
对,real是变量
c.real指的是使用对象c中的real变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-31 20:27:15 | 显示全部楼层
人造人 发表于 2020-3-31 20:19
但是c.real是什么意思啊?c引用了real方法?可real不是个变量吗?
对,real是变量
c.real指的是使用对象c ...

你好!请问怎么发表回复查看代码帖子?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-31 20:30:17 | 显示全部楼层
Cool_Breeze 发表于 2020-3-31 20:27
你好!请问怎么发表回复查看代码帖子?

什么?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-31 20:35:45 | 显示全部楼层

请问怎么发布需要别人回复信息才能查看帖子隐藏内容的帖子!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-31 20:47:18 | 显示全部楼层
Cool_Breeze 发表于 2020-3-31 20:35
请问怎么发布需要别人回复信息才能查看帖子隐藏内容的帖子!

1.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-31 20:48:55 | 显示全部楼层

谢谢!我好像等级不够,发不了这样的帖子...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-31 21:17:15 | 显示全部楼层
Cool_Breeze 发表于 2020-3-31 20:48
谢谢!我好像等级不够,发不了这样的帖子...

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-31 21:18:11 | 显示全部楼层    本楼为最佳答案   
它访问的就是成员变量,因为是在类自己的作用域中,可以访问私有数据的,出了类作用域就只能访问公有成员
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-31 22:35:22 | 显示全部楼层
但是c.real是什么意思啊?c引用了real方法?可real不是个变量吗?

他在操作符重载函数里面定义了一个Complex类,就是c,并且应为操作符重载函数是在类的作用域里面的,所以可以直接使用“c.real”来访问私有成员变量。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-1 00:17:04 | 显示全部楼层
人造人 发表于 2020-3-31 20:19
但是c.real是什么意思啊?c引用了real方法?可real不是个变量吗?
对,real是变量
c.real指的是使用对象c ...

好的谢谢啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-3 14:38

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表