【发布时间】:2021-06-24 17:22:00
【问题描述】:
我有一个 A 类的对象。
class A[
{
int x;
string y;
float z;
....
}
然后我有一个 int,称为“integer”。 如何重新定义 = 运算符以执行类似的操作
int integer;
A obj = integer;
为了获得与非所有成员的构造函数调用相等的东西:
A obj(integer,",0);
【问题讨论】:
-
提供您自己的
operator=(int)。 -
A obj = integer;调用构造函数,从不调用operator=。A obj; a = integer;会调用operator=。 -
@iBug 我该怎么做?这是问题
-
@HolyBlackCat 我修改了问题,x 不是类的唯一成员。
-
在更新您的问题以反映产生您所说的错误的真实代码之前,无论您得到什么都是无关紧要的。完成您似乎要问requires a conversion constructor 的事情。如果这还不足以满足您的需求,那么我们需要查看正确配置的 minimal reproducible example 。
标签: c++ operator-keyword redefine