我是靠谱客的博主 哭泣宝贝,这篇文章主要介绍用类对象初始化int,double 等类型的变量,现在分享给大家,希望可以做个参考。

如何将一个类赋值给一个int,double等型的变量,可以采用重载类型的方法解决,如下:

1.没有重载int类型之前:

#include <iostream>

using namespace std;

class Test
{
public:
    Test(int d = 0):data(d)
    {
    }
    ~Test()
    {
    }
public:
    void Showdata()const
    {
        cout<<data<<endl;
    }
private:
    int data;
};

int main()
{
    Test t(10);
    t.Showdata();
    int val1 = 100;
    t = val1;
    t.Showdata();

    Test t1(200);
    int val2 = 0;
    val2 = t1;
    cout<<val2<<endl;

    return 0;
}

测试结果:

[root@localhost Test4_20]# g++ tt.cpp -o tt
tt.cpp: In function ‘int main()’:
tt.cpp:34:7: error: cannot convert ‘Test’ to ‘int’ in assignment
  val2 = t1;
       ^
[root@localhost Test4_20]# 

2.重载了int类型之后:

#include <iostream>

using namespace std;

class Test
{
public:
    Test(int d = 0):data(d)
    {
    }
    ~Test()
    {
    }
public:
    void Showdata()const
    {
        cout<<data<<endl;
    }
public:
    operator int()const
    {
        return data;
    }

private:
    int data;
};

int main()
{
    Test t(10);
    t.Showdata();
    int val1 = 100;
    t = val1;
    t.Showdata();

    Test t1(200);
    int val2 = 0;
    val2 = t1;
    cout<<val2<<endl;

    return 0;
}

输出结果:

[root@localhost Test4_20]# g++ tt.cpp -o tt
[root@localhost Test4_20]# ./tt
10
100
200
[root@localhost Test4_20]# 

最后

以上就是哭泣宝贝最近收集整理的关于用类对象初始化int,double 等类型的变量的全部内容,更多相关用类对象初始化int,double内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(128)

评论列表共有 0 条评论

立即
投稿
返回
顶部