chapter3-13.cpp

来自「C++STL程序员开发指南」· C++ 代码 · 共 28 行

CPP
28
字号
//文件名:CHAPTER3-13.cpp
template <typename T>
class wrapper
{public:
wrapper() throw() : value_(NULL)
{ 	 try {	value_ = new T;}
   	 catch (...) { 	 }
}
~wrapper() throw()
{    try { delete value_;}
     catch (...){operator delete(value_);}
}
bool get(T &value) const throw(){return assign(value, *value_);}
bool set(T const &value) throw(){return assign(*value_, value);}
private:
   bool assign(T &to, T const &from) throw()
   {
      bool error(false);
      try{to = from; }
      catch (...) { error = true;}
      return error;
  }
  T *value_;
  wrapper(wrapper const &);
  wrapper &operator=(wrapper const &);
};
void main(){wrapper<int> mywrapper();}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?