descriptiveexception.ipp

来自「ace开发环境 用来开发网络程序 其运用了设计模式、多平台、C++等多种知识」· IPP 代码 · 共 92 行

IPP
92
字号
// file      : Utility/ExH/System/DescriptiveException.ipp// author    : Boris Kolpackov <boris@kolpackov.net>// copyright : Copyright (c) 2002-2003 Boris Kolpackov// license   : http://kolpackov.net/license.html#include <cstring>namespace Utility{  namespace ExH  {    namespace System    {      // c-tor's & d-tor      inline DescriptiveException::      DescriptiveException () throw ()      {        description_[0] = '\0';      }      inline DescriptiveException::      DescriptiveException (char const* description) throw ()      {        init (description);      }      inline DescriptiveException::      DescriptiveException (std::string const& description) throw ()      {        try        {          init (description.c_str ());        }        catch (...)        {        }      }      inline DescriptiveException::      DescriptiveException (DescriptiveException const& src) throw ()        : Base ()      {        init (src.what ());      }      inline DescriptiveException::      ~DescriptiveException () throw ()      {      }      inline DescriptiveException& DescriptiveException::      operator= (DescriptiveException const& src) throw ()      {        init (src.what ());        return *this;      }      // accessors / modifiers      inline void DescriptiveException::      init (char const* description) throw ()      {        if (description != 0)        {          std::strncpy (description_, description, DESCRIPTION_SIZE - 1);          description_[DESCRIPTION_SIZE - 1] = '\0';        }        else        {          description_[0] = '\0';        }      }      inline char const* DescriptiveException::      what () const throw ()      {        if (description_[0] != '\0')        {          return description_;        }        else        {          return Exception::what ();        }      }    }  }}//$Id: DescriptiveException.ipp 77797 2007-03-25 23:25:44Z wotte $

⌨️ 快捷键说明

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