c – 重载operator = for double
发布时间:2020-12-16 10:09:33 所属栏目:百科 来源:网络整理
导读:是否可以重载= double类型的运算符? 我有以下内容: double operator=(double a,Length b) { return a = (b.getInches()/12+b.getFeet())*3.2808*0.9144;} 它会引发以下错误: 'double operator=(double,Length)' must be a nonstatic member function 我究
是否可以重载= double类型的运算符?
我有以下内容: double operator=(double a,Length b) { return a = (b.getInches()/12+b.getFeet())*3.2808*0.9144; } 它会引发以下错误: 'double operator=(double,Length)' must be a nonstatic member function 我究竟做错了什么? 解决方法
您不能为内置(整数或浮点)类型(如double)重载运算符,也不能对任何类型的=运算符进行全局重载. =运算符只能作为类成员函数重载.
另见:Can I define an operator overload that works with built-in / intrinsic / primitive types? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |