如何使类可以使用等号分配值

时间:2012-04-08 02:07:08

标签: class object equals assign

首先我为什么要这样做...我正在努力学习编程,并认为理解这一步将进一步帮助我。所以请帮忙。 可以使用几种语言的int来完成......

int x;

X = 2;

所以我该怎么做:

abc x;

X = 2;

填写

class abc {

//“我在这里做什么来制作任何由它创建的对象,以便能够以这种方式分配值......不像abc(2);我可以这样做。”

}

2 个答案:

答案 0 :(得分:1)

至少在C ++中,它隐含了单参数构造函数。在JavaScript中,它是不可能的。 C ++:

class SomeClass {
public:
    int x;

    SomeClass(int x) {
        this->x = x;
    }
};

int main(int argc, char *argv[]) {
    SomeClass s = 5;

    cout << s.x << "\n"; // 5

    s = 17;

    cout << s.x << "\n"; // 17

    return 0;
}

Here's a demo.

答案 1 :(得分:0)

对象不太像那样工作。 int可以赋值为7,因为int是基本类型,7是基本类型。一个对象是不同的。只能将对象分配给相同类型的对象。 7不是对象。它只是一个数字。

对象是实例变量和方法的集合。这可以防止您将其分配给基本类型,如int,它只是一个位集合。可以分配对象的唯一事物是相同类型的对象,或者转换为该类型的对象。