⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 compound.cpp

📁 ACE自适配通信环境(ADAPTIVE Communication Environment)是可以自由使用、开放源码的面向对象(OO)框架(Framework)
💻 CPP
字号:
// file      : Test/ExH/Compound/compound.cpp// author    : Boris Kolpackov <boris@kolpackov.net>// copyright : Copyright (c) 2002-2003 Boris Kolpackov// license   : http://kolpackov.net/license.html#include "Utility/ExH/Compound.hpp"#include <string>using namespace Utility::ExH;struct E {};void postcondition (bool p) throw (E){  if (!p) throw E ();}class Base{protected:  Base () throw ()  {  }  void  init (char const* description) throw ()  {    str_ = description;  }  char const*  what () const throw ()  {    return str_.c_str ();  }public:  std::string str_;};class A_ {};typedefCompound<A_, Base>A;struct StringHolder{  StringHolder (char const* s)      : str_ (s)  {  }  operator std::string () const  {    return str_;  }  std::string str_;};int main (){  try  {    // Compound (char const*)    //    {      A a ("hello");      postcondition (a.str_ == "hello");    }    // Compound (T const&)    //    {      StringHolder a ("hello");      A b (a);      postcondition (b.str_ == "hello");    }    // Compound (Compound const&)    //    {      A a ("hello");      A b (a);      postcondition (b.str_ == "hello");    }    // ~Compound ()    //    // operator= (Compound const&)    //    {      A a ("hello");      A b ("foo");      b = a;      postcondition (b.str_ == "hello");    }    // Compound ()    //  }  catch (...)  {    return -1;  }}//compound.cpp,v 1.1 2005/05/24 04:33:12 turkaye Exp

⌨️ 快捷键说明

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