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

📄 xmlelement.h

📁 c++ 实现的矩阵运算库
💻 H
字号:
#ifndef CPPUNIT_TOOLS_XMLELEMENT_H#define CPPUNIT_TOOLS_XMLELEMENT_H#include <cppunit/Portability.h>#if CPPUNIT_NEED_DLL_DECL#pragma warning( push )#pragma warning( disable: 4251 )  // X needs to have dll-interface to be used by clients of class Z#endif#include <cppunit/portability/CppUnitDeque.h>#include <string>CPPUNIT_NS_BEGINclass XmlElement;#if CPPUNIT_NEED_DLL_DECL//  template class CPPUNIT_API std::deque<XmlElement *>;#endif/*! \brief A XML Element. *  * A XML element has: * - a name, specified on construction, * - a content, specified on construction (may be empty), * - zero or more attributes, added with addAttribute(), * - zero or more child elements, added with addElement(). */class CPPUNIT_API XmlElement{public:  /*! \brief Constructs an element with the specified name and string content.   * \param elementName Name of the element. Must not be empty.   * \param content Content of the element.   */  XmlElement( std::string elementName,              std::string content ="" );  /*! \brief Constructs an element with the specified name and numeric content.   * \param elementName Name of the element. Must not be empty.   * \param numericContent Content of the element.   */  XmlElement( std::string elementName,              int numericContent );  /*! \brief Destructs the element and its child elements.   */  virtual ~XmlElement();  /*! \brief Returns the name of the element.   * \return Name of the element.   */  std::string name() const;  /*! \brief Returns the content of the element.   * \return Content of the element.   */  std::string content() const;  /*! \brief Sets the name of the element.   * \param name New name for the element.   */  void setName( const std::string &name );  /*! \brief Sets the content of the element.   * \param content New content for the element.   */  void setContent( const std::string &content );  /*! \overload void setContent( const std::string &content )   */  void setContent( int numericContent );  /*! \brief Adds an attribute with the specified string value.   * \param attributeName Name of the attribute. Must not be an empty.   * \param value Value of the attribute.   */  void addAttribute( std::string attributeName,                     std::string value );  /*! \brief Adds an attribute with the specified numeric value.   * \param attributeName Name of the attribute. Must not be empty.   * \param numericValue Numeric value of the attribute.   */  void addAttribute( std::string attributeName,                     int numericValue );  /*! \brief Adds a child element to the element.   * \param element Child element to add. Must not be \c NULL.   */  void addElement( XmlElement *element );  /*! \brief Returns the number of child elements.   * \return Number of child elements (element added with addElement()).   */  int elementCount() const;  /*! \brief Returns the child element at the specified index.   * \param index Zero based index of the element to return.   * \returns Element at the specified index. Never \c NULL.   * \exception std::invalid_argument if \a index < 0 or index >= elementCount().   */  XmlElement *elementAt( int index ) const;  /*! \brief Returns the first child element with the specified name.   * \param name Name of the child element to return.   * \return First child element found which is named \a name.   * \exception std::invalid_argument if there is no child element with the specified   *            name.   */  XmlElement *elementFor( const std::string &name ) const;  /*! \brief Returns a XML string that represents the element.   * \param indent String of spaces representing the amount of 'indent'.   * \return XML string that represents the element, its attributes and its   *         child elements.   */  std::string toString( const std::string &indent = "" ) const;private:  typedef std::pair<std::string,std::string> Attribute;  std::string attributesAsString() const;  std::string escape( std::string value ) const;private:  std::string m_name;  std::string m_content;  typedef CppUnitDeque<Attribute> Attributes;  Attributes m_attributes;  typedef CppUnitDeque<XmlElement *> Elements;  Elements m_elements;};CPPUNIT_NS_END#if CPPUNIT_NEED_DLL_DECL#pragma warning( pop )#endif#endif  // CPPUNIT_TOOLS_XMLELEMENT_H

⌨️ 快捷键说明

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