C++运算符重载——指针、乘法

标签 c++ overloading operator-keyword

我想知道乘法运算 (*) 是否在指针中重载,反之亦然?

或者操作者是个体的?

C++

最佳答案

它们是独立的运算符,重载哪个运算符取决于传递给运算符的参数。

struct A
{
    //dereference operator
    A /*or whatever*/ operator *() { /*...*/ };
    //multiply operator           
    A operator *(const A&) { /*...*/ };
};

//...
A a;
*a; //calls dereference operator
a * a; //calls multiply operator

关于C++运算符重载——指针、乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10975731/

相关文章:

c++ - 具有多个 GUI 屏幕的程序的设计方法

c++ - 在 Arduino 中除以两个整数

c++ - 从 C/C++ 中的 ** 矩阵中提取行/列

c++ - 有效地将两个整数 x 和 y 转换为 float x.y

c++ - 为什么我不能重载 operator=?

java - 将父类(super class)作为参数传递给需要子类的方法

c++ - G++:不明确案例的默认重载

c++ - 运算符重载 = 和模板 double 值仅对 int 不起作用

c++ - 下标运算符重载以访问私有(private)数组

c++ - 运算符(==)重载错误