首页 > 试题广场 >

在下列运算符中,不能重载的是( )。

[单选题]
在下列运算符中,不能重载的是()
  • !
  • sizeof
  • new
  • delete
不能被重载的运算符 1、. (成员访问运算符) 2、.* (成员指针访问运算符) 3、:: (域运算符) 4、sizeof(长度运算符) 5、?: (条件运算符)
发表于 2018-05-20 21:48:06 回复(0)
 下面是C++运算符优先级顺序, 【】内的是不能重载的运算符 
【::】                                                                              作用域
->  【.】  ++  --(后自运算)  []                                                     增量、对象、数组
!  ~  ++  --(前自运算)  +  -(正负号)  *(指针)  &(取址)  new  delete  【sizeof】 增量、内存、取反
->*  【.*】                                                                         类成员指针
*  /  %                                                                             算术
+  -                                                                                算术
<<  >>                                                                              位
< <= >= >                                                                           关系
== !=                                                                               关系
&                                                                                   位
^                                                                                   位
|                                                                                   位
&&                                                                                  逻辑
||                                                                                  逻辑
【?:】                                                                              条件
= += -= *= /= %= &= ^= |=                                                           赋值
,                                                                                   逗号
 其中,
    .和.*是为保护访问成员功能而不允许被重载;
    sizeof运算对象是类型而非变量,不具备重载特征。

发表于 2019-08-09 20:40:55 回复(1)
<p>上次看到有个人说只要带点的就不能重载,!也带点,所以我错啦。自习看看sizeof 也带点。</p>
发表于 2020-09-14 19:35:08 回复(1)
不能被重载的运算符 
1、. (成员访问运算符) 
2、.* (成员指针访问运算符) 
3、:: (域运算符) 
4、sizeof(长度运算符)
5、?: (条件运算符)
发表于 2022-07-12 02:00:15 回复(0)