gpt4 book ai didi

c++ - 对运算符 c++ 感到困惑

转载 作者:行者123 更新时间:2023-11-28 06:20:13 25 4
gpt4 key购买 nike

这里是运算符函数(inSeconds是int类型)

const Time Time::operator +( const Time& t) const {
return Time(inSeconds_ + t.inSeconds_);
}

但我还需要使此代码与此运算符一起使用。 (t1 是时间的一个实例,12 是一个整数)不按顺序交换值)

Time t(12 + t1);

请帮助我,抱歉,如果我是新手,这没有任何意义。

谢谢

最佳答案

  1. 使函数成为全局函数,而不是成员函数。
  2. Time 添加一个构造函数,该构造函数采用 int(表示秒)作为参数。

以下代码适用于我:

struct Time
{
Time(int sec) : inSeconds_(sec) {}
int inSeconds_;
};

Time operator+(Time const& lhs, Time const& rhs)
{
return Time(lhs.inSeconds_ + rhs.inSeconds_);
}

int main()
{
Time t1(10);
Time t2(12 + t1);
}

关于c++ - 对运算符 c++ 感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29435387/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com