operator int () const; // 类型转换操作符函数(转整型)

// typeConvert.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

class h
{
public:
 int data;
 operator int () const;  // 类型转换操作符函数(转整型)
};

h::operator int () const
{
 printf("A\n");
 return data;
}

// 使用方法示例:
int foo (const h& val)
{
 printf("foo1\n");
 int data = val;  // 这里会调用类型转换操作符函数
 printf("foo2\n");
 return data;
}

int main(int argc, char* argv[])
{
    h obj;
 obj.data=10;
 int i=foo (obj);
 printf("Hello World!\n");
 int j=obj;
 printf("%d,%d\n",i,j);
 return 0;
}
// foo1
// A
// foo2
// Hello World!
// A
// 10,10
// Press any key to continue


你可能感兴趣的:(C++,基础)