开发者社区 问答 正文

warning C4552: “*”: 运算符不起任何作用;应输入带副作用的运算符

warning C4552: “*”: 运算符不起任何作用;应输入带副作用的运算符
class Rectangle
{

public:
Rectangle(double l,double w):len(l),wid(w){}//写出矩形类的构造函数
double area(){len*wid;}//写出计算矩形面积函数
private:
double len,wid;
};

展开
收起
a123456678 2016-03-20 13:50:14 6234 分享 版权
1 条回答
写回答
取消 提交回答
  • C++语言不要求一个有返回值的函数一定有返回语句。比如
    int main() { }
    这么写是合法的,但是在很多语言,这根本就是无法编译的。
    不过一些编译器,出于害怕你误写的需要,又加上了一些警告。
    你写 len*wid; 这个表达式,没有改变任何变量的值,所以编译器怀疑你的代码是错的。事实上也是。

    2019-07-17 19:09:31
    赞同 展开评论
问答地址: