c++中不能重载的运算符有哪些
时间: 2024-04-02 14:31:16 浏览: 13
在C++中,有一些运算符是不能被重载的,包括:
1. 作用域运算符"::"
2. 条件运算符"? :"
3. 成员指针运算符".*"和"->*"
4. sizeof运算符
5. typeid运算符
6. 预处理符号"#"
7. 逗号运算符","
这些运算符在C++中都有特定的语法和语义,不能被重新定义或重载。
相关问题
c++不能重载运算符有哪些 使用中文回答
C++中不能重载的运算符包括:
1. .(点)运算符:该运算符用于访问类对象的成员,不能被重载。
2. .*(指针点)运算符:该运算符用于访问类对象的成员指针,不能被重载。
3. ::(域解析)运算符:该运算符用于访问命名空间和类的静态成员,不能被重载。
4. sizeof 运算符:该运算符用于计算数据类型或变量的大小,不能被重载。
5. ?:(三目)运算符:该运算符用于条件表达式,不能被重载。
6. typeid 运算符:该运算符用于获取一个表达式的类型信息,不能被重载。
7. const_cast 运算符:该运算符用于去除const属性,不能被重载。
8. dynamic_cast 运算符:该运算符用于动态类型转换,不能被重载。
9. static_cast 运算符:该运算符用于静态类型转换,不能被重载。
10. reinterpret_cast 运算符:该运算符用于类型转换,不能被重载。
c++哪些运算符不能重载
在C++中,以下运算符不能被重载:
1. 成员访问运算符(`.`和`->`):这两个运算符用于访问类的成员,无法被重载。
2. 作用域运算符(`::`):作用域运算符用于访问命名空间、类、结构体和枚举的成员,不能被重载。
3. 三目运算符(`?:`):三目运算符用于条件表达式,不能被重载。
4. sizeof运算符:sizeof运算符用于获取类型或变量的大小,不允许重载。
5. typeid运算符:typeid运算符用于获得类型的信息,不允许重载。
6. 空指针运算符(`nullptr`):空指针运算符用于表示空指针,不能被重载。
7. 预处理器运算符(如`#`和`##`):预处理器运算符在预处理阶段进行处理,不能被重载。
需要注意的是,虽然这些运算符不能被重载,但它们仍然具有其原有的语义和功能。