#ifndef __SI_H__
#define __SI_H__
class smallint
{
public:
friend operator+ (const smallint &,int);
friend operator- (const smallint &,int);
friend operator+ (int, const smallint &);
friend operator- (int, const smallint &);
public:
smallint(int ival):value(ival){};
operator+ (const smallint &);
operator- (const smallint &);
operator int(){ return value;} int getvaule(){return value;}private:
int value;
};
//main.cpp
smallint si(2);
main()
{
    si + 10.2;//为什么这里编译不通过?书上可以的啊?
    int iii = si //为什么这里可以将一个类赋值给一个int 
型的变量?}