相关疑难解决方法(0)

为什么将未使用的返回值转换为void?

int fn();

void whatever()
{
    (void) fn();
}
Run Code Online (Sandbox Code Playgroud)

是否有任何理由将未使用的返回值转换为无效,或者我是否认为这完全是浪费时间?

跟进:

那看起来相当全面.我认为这比评论未使用的返回值更好,因为自我记录代码比评论更好.就个人而言,我会关掉这些警告,因为这是不必要的噪音.

如果一个虫子逃脱,我会吃掉我的话......

c c++ void

105
推荐指数
7
解决办法
4万
查看次数

将加法运算符作为非成员函数重载是否更好?

我有一个Fraction类如下.

class Fraction
{
  int num, den ;

  public:
   //member functions here
} ;
Run Code Online (Sandbox Code Playgroud)

我读了一些书,我认为'有效的c ++'最好将加法运算符作为非成员函数重载.给出的原因是它允许交换加法.这是我为加法运算符重载函数的原型.

Fraction operator + (const Fraction &obj, const int add_int) ;
Run Code Online (Sandbox Code Playgroud)

在这里,当我打电话时,我必须这样做.

f1 + 2 ;
Run Code Online (Sandbox Code Playgroud)

但它不会这样.

2 + f1 ;
Run Code Online (Sandbox Code Playgroud)

为此,我将不得不再次编写该函数并更改其中的参数顺序.

我想知道是否有一种方法可以让我一次重载函数并执行可交换的加法?

c++ oop operator-overloading addition

2
推荐指数
1
解决办法
1212
查看次数

标签 统计

c++ ×2

addition ×1

c ×1

oop ×1

operator-overloading ×1

void ×1