相关疑难解决方法(0)

是否可以将对象分配给int?

我有一个CCounter类,其中包含由互斥锁保护的整数值.我已经定义了几个运算符,比如post/pre inc/dec返回一个整数,所以我可以这样做:

CCounter c(10);
int i = c++;
Run Code Online (Sandbox Code Playgroud)

但是我怎么做一个简单的任务i = c呢?我试图定义friend operator =但它给了我

operator=(int&, const CCounter&)’ must be a nonstatic member function

错误.请指教.谢谢.

c++ operator-overloading

6
推荐指数
2
解决办法
3138
查看次数

如何在C++中从int到object的赋值?

class phone {  
    public:  
        phone(int x) { num = x; }
        int number(void) { return num; }
        void number(int x) { num = x; }

    private:
        int num;
};

int main(void)
{
    phone p1(10);

    p1 = 20;    // here!

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

嗨,大家好

我刚刚宣布了一个类似上面的简单类.
之后我将int值赋给了该类的对象,然后就可以了!
(我打印了它的价值.它存放得当)

如果没有带有int参数的构造,则发生编译错误.
所以,我认为它与构造函数有关.是对的吗?

请给我一个很好的解释.
谢谢.

c++ constructor variable-assignment assignment-operator

0
推荐指数
1
解决办法
2538
查看次数