message.cpp

来自「c++ 实现的矩阵运算库」· C++ 代码 · 共 150 行

CPP
150
字号
#include <cppunit/Message.h>#include <stdexcept>CPPUNIT_NS_BEGINMessage::Message(){}Message::Message( const std::string &shortDescription )    : m_shortDescription( shortDescription ){}Message::Message( const std::string &shortDescription,                  const std::string &detail1 )    : m_shortDescription( shortDescription ){  addDetail( detail1 );}Message::Message( const std::string &shortDescription,                  const std::string &detail1,                  const std::string &detail2 )    : m_shortDescription( shortDescription ){  addDetail( detail1, detail2 );}Message::Message( const std::string &shortDescription,                  const std::string &detail1,                  const std::string &detail2,                  const std::string &detail3 )    : m_shortDescription( shortDescription ){  addDetail( detail1, detail2, detail3 );}const std::string &Message::shortDescription() const{  return m_shortDescription;}int Message::detailCount() const{  return (int)m_details.size();}std::string Message::detailAt( int index ) const{  if ( index < 0  ||  index >= detailCount() )    throw std::invalid_argument( "Message::detailAt() : invalid index" );  return m_details[ index ];}std::string Message::details() const{  std::string details;  for ( Details::const_iterator it = m_details.begin(); it != m_details.end(); ++it )  {    details += "- ";    details += *it;    details += '\n';  }  return details;}void Message::clearDetails(){  m_details.clear();}void Message::addDetail( const std::string &detail ){  m_details.push_back( detail );}void Message::addDetail( const std::string &detail1,                    const std::string &detail2 ){  addDetail( detail1 );  addDetail( detail2 );}void Message::addDetail( const std::string &detail1,                    const std::string &detail2,                    const std::string &detail3 ){  addDetail( detail1, detail2 );  addDetail( detail3 );}void Message::addDetail( const Message &message ){  m_details.insert( m_details.end(),                     message.m_details.begin(),                     message.m_details.end() );}void Message::setShortDescription( const std::string &shortDescription ){  m_shortDescription = shortDescription;}bool Message::operator ==( const Message &other ) const{  return m_shortDescription == other.m_shortDescription  &&         m_details == other.m_details;}bool Message::operator !=( const Message &other ) const{  return !( *this == other );}CPPUNIT_NS_END

⌨️ 快捷键说明

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