double的运算符

238次

问题描述:

c++不能重载的运算符

推荐答案

2023-10-23 13:12:18

在C++中,类型的名字本身也是一种运算符,即强调类型转换运算符。

强制类型转换运算符是单目运算符,也可以被重载,但只能重载为成员函数,不能重载为全局函数。

经过适当重载后,“(类型名)对象”这个对对象进行强制类型转换的表达式就等价于“对象operator 类型名()”,即变成对运算符函数的调用。

operator double()

{

return real;

}

double n = 12+c;

==>double n =12+c.operator double();

*有了对double运算符的重载,本该出现double类型变量或常量的地方,如果出现了一个myComplex类型的对象,那么就会调用该对象的operator double成员函数,然后取其返回值使用。

*/

#include<iostream>

using namespace std;

class myComplex

{

double real,imag;

public:

myComplex(double r=0,double i=0):real(r),imag(i){};

operator double()

//重载强制类型转换运算符double

{

return real;

}

};

int main()

{

myComplex c(1.2,-3.4);

cout<<(double)c<<endl;

double n=12+c;

//实部相加

cout<<n<<endl;

return 0;

}

其他答案

2023-10-23 13:12:18

1. 是指对双精度浮点数进行运算的操作符。

2. 这是因为double是一种数据类型,用于存储双精度浮点数,它可以表示更大范围的数值和更高的精度。在进行运算时,可以使用一系列的运算符来对double类型的变量进行加减乘除等操作,以实现数值计算。

3. 此外,还可以进行一些其他的操作,如取余、取整、比较大小等。通过合理使用这些运算符,可以对double类型的数据进行各种复杂的数学运算,满足不同场景下的需求。

其他答案

2023-10-23 13:12:18

double类型的运算符包括:

1. 算术运算符:加法(+)、减法(-)、乘法(*)、除法(/)、求模(%)

2. 赋值运算符:赋值(=)、加法赋值(+=)、减法赋值(-=)、乘法赋值(*=)、除法赋值(/=)、求模赋值(%=)

3. 自增自减运算符:自增(++)、自减(--)

4. 关系运算符:相等(==)、不相等(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)

5. 逻辑运算符:与(&&)、或(||)、非(!)

6. 位运算符:按位与(&)、按位或(|)、按位异或(^)、按位取反(~)、左移(<<)、右移(>>)

7. 条件运算符:条件表达式(? :)

8. 其他运算符:取地址(&)、取值(*)、sizeof、类型转换((type))

9. 数组索引运算符([]):用于访问数组中的元素

10. 成员访问运算符(.):用于访问对象的成员变量或成员函数

11. 指针访问运算符(->):用于访问指针所指向的对象的成员变量或成员函数

知道问答相关问答

(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6