看不懂一个关于参数的掉用语法,新手

discory 2005-03-08 04:02:39
我看了1个星期了,还不是明白怎么用的,代码不全,但是各位大虾一看
就知道我想问什么了,请教各位大虾了,谢谢。

class Rational
{
public:
Rational( int = 0, int = 1 );
Rational additon( const Rational & );
...............
void printRational ();
private:
int numerator;
int denominator;
void reduction;
};

Rational Ratonal::addition( const Rational &a )
{
Rational t;
t.numerator = a.numerator * denominator; // 这里,参数a.numerator是什么意思
// 有这样的写法吗?我知道对象可以这样
// 调用,可一个参数也可以?那表示什么
// 又是传递的什么
t.numerator += a.denominator * numerator;
t.denominator = a.denominator * denominator;
t.reduction();
return t;
}


...全文
206 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
discory 2005-03-09
  • 打赏
  • 举报
回复
是不是numerator 隐藏了t对象的this指针,这样写你看对不,t->numerator和t.numerator
langzi8818 2005-03-08
  • 打赏
  • 举报
回复
错了~~
这个有个 this指针~指向函数的调用对象~只是省略了
cdo 2005-03-08
  • 打赏
  • 举报
回复
请问一下:
t.numerator += a.denominator * numerator;
这个地方最后的一个numerator前面不用带对像名的吗?哪怎么来判断是来自哪个对像呀?

我如果写成a.denominator * a.numerator;这样应该也没错吧。
xiaoche79 2005-03-08
  • 打赏
  • 举报
回复
c++中有三种传递方式,值传递,地址传递,引用传递.
这里属于第三个传递方式,是c语言中没有的.注意对象的引用就是变量的别名.
llmsn 2005-03-08
  • 打赏
  • 举报
回复
传递的是一个类的引用对象,当然可以访问类的成员了.
beyondtkl 2005-03-08
  • 打赏
  • 举报
回复
基本的語法 先好好過一遍
weiym 2005-03-08
  • 打赏
  • 举报
回复
晕,传的是对象的引用啊
xxyifan 2005-03-08
  • 打赏
  • 举报
回复
我建议楼主先看看书再问问题
kobefly 2005-03-08
  • 打赏
  • 举报
回复
作为非内嵌类型(类)在传入函数得时候
我们一般采用传地址得方法
因为传值得话,代价太大

所以我们传得是一个class得引用
这个引用自然可以跟对象一样得使用啊
pcboyxhy 2005-03-08
  • 打赏
  • 举报
回复
传引用啊
guoqiang721029 2005-03-08
  • 打赏
  • 举报
回复
其实参数a就是形参的别名.
oyljerry 2005-03-08
  • 打赏
  • 举报
回复
含有this指针
传递对象引用

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧