C ++中的运算符:如何使用C ++中的运算符将内部对象中的变量值分配给int变量

用户名

如果我有一个对象Obj(它具有int变量,如Obj.var),我是c ++的新手,我如何使用'='运算符将该值分配给另一个int?

注意:当Obj是泛型时,我已经实现了别人编写的,我想使用而不修改的代码,但是它仅用于int

下面的例子:

class Obj

{

public:

    int var ; 
};

int variable;

variable = Obj;

我希望这会发生:

variable = Obj.var
来自莫斯科的弗拉德

如果我对您的理解正确,则可以在类定义中包含转换运算符。

例如

#include <iostream>

class Obj
{
public:
    operator int() const { return var; }
    int var ; 
};


int main()
{
    Obj obj = { 10 };

    int variable = obj;

    std::cout << "variable = " << variable << '\n';
}

程序输出为

variable = 10

或者也可以像这样定义运算符

operator const int &() const { return var; }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章