基本数据类型的封装基本数据类型不是类,因此不能继承。把它们封装一下就好了。但是封装之后要能够代替基本数据类型使用,并且跟相应的基本类型通用。
java中有封装好的基本类型的类,但是他们不能跟基本类型通用。C++能轻松实现。 下面是我的一个实现模板。 template< class T > class Wrapper{ T var; public: Wrapper( const T& t=T() ):var(t){} Wrapper( const Wrapper& w ):var(w.var){} operator T&(){return var;} Wrapper& operator=( const T& t ) { var=t; return *this; } Wrapper& operator=( const Wrapper& w ) { var=w.var; return *this; } }; 用这个模板可以封装任何基本类型。比如: typedef Wrapper
|
|