C++ 重载加法或乘法运算符与构造函数类似吗?

C++ 重载加法或乘法运算符与构造函数类似吗?,c++,operator-overloading,C++,Operator Overloading,我有以下两个类:closePrime()和trigger() trigger()类具有动态分配的closePrime对象数组: //trigger.h #include "closePrime.h" using namespace std; class trigger { private: closePrime* objArray; int size; ... public: trigger(); tri

我有以下两个类:closePrime()和trigger()

trigger()类具有动态分配的closePrime对象数组:

//trigger.h

#include "closePrime.h"
using namespace std;

class trigger
{
    private:
       closePrime* objArray;
       int size;
       ...

    public:
       trigger();
       trigger(int s);
       ...
}

是否可以重载加法或乘法运算符,以便在main/my driver中我可以执行以下操作:

int main()
{
    // i'm not sure if this would be the syntax
    trigger triggerObj + 3;

    // or something like
    trigger triggerObj * 3;
}
这等于说

int main()
{
    trigger triggerObj(3);
}
我不熟悉运算符重载,所以我想知道是否有一个、两个或两个都有可能?我不确定我会将代码放在哪里,即使它是。如果我需要分享更多信息,请告诉我。多谢各位

注:无STL

trigger triggerObj + 3;
在语言(c++)中看起来不像一个合法的构造

但是,您可以将其修改为以下内容:

trigger triggerObj = trigger() + 3;


然后重载
+
,如果需要,还可能重载
=

否,至少不是以
触发触发器OBJ+3的形式重载。
这样做会有什么好处?
trigger triggerObj = trigger() + 3;
trigger triggerObj = whatever + 3;