首页 > 试题广场 >

下面哪些运算符不能被重载?

[不定项选择题]
下面运算符不能被重载的是()
  • 做用域运算符“::”
  • 对象成员运算符“.”
  • 指针成员运算符“->”
  • 三目运算符“? :”
带点点的都不重载,记住!!!
编辑于 2021-04-12 15:27:01 回复(9)
发表于 2018-09-02 20:08:43 回复(1)
<p>简而言之,sizeof和含义点的运算符不能重载</p>
发表于 2020-11-17 14:47:48 回复(0)
除了!,其他带.的运算符都不能重载
发表于 2021-04-10 10:08:17 回复(0)
C++ 里面. , .* , :: , ?:,siezof不能重载.
发表于 2018-07-17 21:09:41 回复(0)
C语言的题总是有c++,就很离谱
发表于 2022-05-07 12:39:02 回复(0)
没学c++的我完美避开全部正确答案
发表于 2021-10-01 10:56:02 回复(0)
重载是什么东西呀
发表于 2020-11-26 13:55:18 回复(1)
运算符重载是一种特性,它允许你重新定义已有的运算符的行为,以适应自定义类型的操作。 在C++中,你可以通过重载运算符来定义自定义类型的操作,使其具有与内置类型相似的行为。通过运算符重载,你可以自定义类型的对象之间的操作,使其更符合语义上的期望。 运算符重载的语法如下: ```cpp return_type operator op (parameters) { // 运算符重载的实现 } ``` 其中,`operator`是运算符关键字,`op`是要重载的运算符,`return_type`是运算符重载函数的返回类型,`parameters`是运算符重载函数的参数。 以下是一些常见的运算符,可以通过运算符重载来重新定义它们的行为: - 算术运算符:`+`、`-`、`*`、`/`、`%`等。 - 比较运算符:`==`、`!=`、`<`、`>`、`<=`、`>=`等。 - 赋值运算符:`=`、`+=`、`-=`、`*=`、`/=`等。 - 下标运算符:`[]`。 - 函数调用运算符:`()`。 以下是一个简单的示例,展示如何重载加法运算符 `+`: ```cpp class MyNumber { private: int value; public: MyNumber(int val) : value(val) {} MyNumber operator+(const MyNumber& other) { return MyNumber(value + other.value); } }; ``` 在上面的示例中,`MyNumber` 类重载了 `+` 运算符。通过定义 `operator+` 函数,我们可以使用 `+` 运算符对 `MyNumber` 类的对象进行相加操作。 运算符重载是一种强大的特性,但应该谨慎使用。它应该符合直觉和语义,避免引起混淆和意外行为。在设计和使用运算符重载时,应该遵循良好的编程实践和原则。
发表于 2023-08-20 12:52:14 回复(0)