类型转换函数operator Type();

版权声明:本文为博主原创文章,允许转载,转载请注明出处。 https://blog.csdn.net/KnightOnHourse/article/details/79946916
/*
类型转换函数能够实现把一个类 类型 转换成 基本数据类型(int、float、double、char等) 或者 另一个类 类型。
其定义形式如下,注意不能有返回值,不能有参数,只能返回要转换的数据类型
*/


#include<iostream>
#include<iomanip>
#include<string>
using namespace std;



class CDataCollection{
private:
	char cVar;
	int iVar;
	float fVar;
	double dVar;
	string sVar;
public:
	CDataCollection(char c, int i, float f, double d, string s){cVar = c; iVar = i; fVar = f; dVar = d; sVar = s;}
	operator char(){return cVar;}
	operator int(){return iVar;}
	operator float(){return fVar;}
	operator double(){return dVar;}
	operator string(){return sVar;}
};


void OperatorTst()
{
	CDataCollection oDataCollection('i', 1, 3.14, 3.1415926,"Phone");
	char cVar = oDataCollection; cout << "CDataCollection--->char : " << cVar << endl;
	int iVar = oDataCollection; cout << "CDataCollection--->int : " << iVar << endl;
	float fVar = oDataCollection; cout << "CDataCollection--->float : " << fVar << endl;
	double dVar = oDataCollection; cout << "CDataCollection--->double : " << dVar << endl;
	string sVar = oDataCollection; cout << "CDataCollection--->string : " << sVar << endl;
}


void main()
{
	OperatorTst();
}


阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页