亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? tinyxml.h

?? wince設置MUTE,設置設備靜音的代碼CE下。
?? H
?? 第 1 頁 / 共 5 頁
字號:
/*www.sourceforge.net/projects/tinyxmlOriginal code (2.0 and earlier )copyright (c) 2000-2006 Lee Thomason (www.grinninglizard.com)This software is provided 'as-is', without any express or impliedwarranty. In no event will the authors be held liable for anydamages arising from the use of this software.Permission is granted to anyone to use this software for anypurpose, including commercial applications, and to alter it andredistribute it freely, subject to the following restrictions:1. The origin of this software must not be misrepresented; you mustnot claim that you wrote the original software. If you use thissoftware in a product, an acknowledgment in the product documentationwould be appreciated but is not required.2. Altered source versions must be plainly marked as such, andmust not be misrepresented as being the original software.3. This notice may not be removed or altered from any sourcedistribution.*/#ifndef TINYXML_INCLUDED#define TINYXML_INCLUDED#ifdef _MSC_VER#pragma warning( push )#pragma warning( disable : 4530 )#pragma warning( disable : 4786 )#endif#include <ctype.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <assert.h>// Help out windows:#if defined( _DEBUG ) && !defined( DEBUG )#define DEBUG#endif#ifdef TIXML_USE_STL	#include <string> 	#include <iostream>	#include <sstream>	#define TIXML_STRING		std::string#else	#include "tinystr.h"	#define TIXML_STRING		TiXmlString#endif// Deprecated library function hell. Compilers want to use the// new safe versions. This probably doesn't fully address the problem,// but it gets closer. There are too many compilers for me to fully// test. If you get compilation troubles, undefine TIXML_SAFE#define TIXML_SAFE#ifdef TIXML_SAFE	#if defined(_MSC_VER) && (_MSC_VER >= 1400 )		// Microsoft visual studio, version 2005 and higher.		#define TIXML_SNPRINTF _snprintf_s		#define TIXML_SNSCANF  _snscanf_s		#define TIXML_SSCANF   sscanf_s	#elif defined(_MSC_VER) && (_MSC_VER >= 1200 )		// Microsoft visual studio, version 6 and higher.		//#pragma message( "Using _sn* functions." )		#define TIXML_SNPRINTF _snprintf		#define TIXML_SNSCANF  _snscanf		#define TIXML_SSCANF   sscanf	#elif defined(__GNUC__) && (__GNUC__ >= 3 )		// GCC version 3 and higher.s		//#warning( "Using sn* functions." )		#define TIXML_SNPRINTF snprintf		#define TIXML_SNSCANF  snscanf		#define TIXML_SSCANF   sscanf	#else		#define TIXML_SSCANF   sscanf	#endif#endif	class TiXmlDocument;class TiXmlElement;class TiXmlComment;class TiXmlUnknown;class TiXmlAttribute;class TiXmlText;class TiXmlDeclaration;class TiXmlParsingData;const int TIXML_MAJOR_VERSION = 2;const int TIXML_MINOR_VERSION = 5;const int TIXML_PATCH_VERSION = 3;/*	Internal structure for tracking location of items 	in the XML file.*/struct TiXmlCursor{	TiXmlCursor()		{ Clear(); }	void Clear()		{ row = col = -1; }	int row;	// 0 based.	int col;	// 0 based.};/**	If you call the Accept() method, it requires being passed a TiXmlVisitor	class to handle callbacks. For nodes that contain other nodes (Document, Element)	you will get called with a VisitEnter/VisitExit pair. Nodes that are always leaves	are simple called with Visit().	If you return 'true' from a Visit method, recursive parsing will continue. If you return	false, <b>no children of this node or its sibilings</b> will be Visited.	All flavors of Visit methods have a default implementation that returns 'true' (continue 	visiting). You need to only override methods that are interesting to you.	Generally Accept() is called on the TiXmlDocument, although all nodes suppert Visiting.	You should never change the document from a callback.	@sa TiXmlNode::Accept()*/class TiXmlVisitor{public:	virtual ~TiXmlVisitor() {}	/// Visit a document.	virtual bool VisitEnter( const TiXmlDocument& /*doc*/ )			{ return true; }	/// Visit a document.	virtual bool VisitExit( const TiXmlDocument& /*doc*/ )			{ return true; }	/// Visit an element.	virtual bool VisitEnter( const TiXmlElement& /*element*/, const TiXmlAttribute* /*firstAttribute*/ )	{ return true; }	/// Visit an element.	virtual bool VisitExit( const TiXmlElement& /*element*/ )		{ return true; }	/// Visit a declaration	virtual bool Visit( const TiXmlDeclaration& /*declaration*/ )	{ return true; }	/// Visit a text node	virtual bool Visit( const TiXmlText& /*text*/ )					{ return true; }	/// Visit a comment node	virtual bool Visit( const TiXmlComment& /*comment*/ )			{ return true; }	/// Visit an unknow node	virtual bool Visit( const TiXmlUnknown& /*unknown*/ )			{ return true; }};// Only used by Attribute::Query functionsenum { 	TIXML_SUCCESS,	TIXML_NO_ATTRIBUTE,	TIXML_WRONG_TYPE};// Used by the parsing routines.enum TiXmlEncoding{	TIXML_ENCODING_UNKNOWN,	TIXML_ENCODING_UTF8,	TIXML_ENCODING_LEGACY};const TiXmlEncoding TIXML_DEFAULT_ENCODING = TIXML_ENCODING_UNKNOWN;/** TiXmlBase is a base class for every class in TinyXml.	It does little except to establish that TinyXml classes	can be printed and provide some utility functions.	In XML, the document and elements can contain	other elements and other types of nodes.	@verbatim	A Document can contain:	Element	(container or leaf)							Comment (leaf)							Unknown (leaf)							Declaration( leaf )	An Element can contain:	Element (container or leaf)							Text	(leaf)							Attributes (not on tree)							Comment (leaf)							Unknown (leaf)	A Decleration contains: Attributes (not on tree)	@endverbatim*/class TiXmlBase{	friend class TiXmlNode;	friend class TiXmlElement;	friend class TiXmlDocument;public:	TiXmlBase()	:	userData(0)		{}	virtual ~TiXmlBase()			{}	/**	All TinyXml classes can print themselves to a filestream		or the string class (TiXmlString in non-STL mode, std::string		in STL mode.) Either or both cfile and str can be null.				This is a formatted print, and will insert 		tabs and newlines.				(For an unformatted stream, use the << operator.)	*/	virtual void Print( FILE* cfile, int depth ) const = 0;	/**	The world does not agree on whether white space should be kept or		not. In order to make everyone happy, these global, static functions		are provided to set whether or not TinyXml will condense all white space		into a single space or not. The default is to condense. Note changing this		value is not thread safe.	*/	static void SetCondenseWhiteSpace( bool condense )		{ condenseWhiteSpace = condense; }	/// Return the current white space setting.	static bool IsWhiteSpaceCondensed()						{ return condenseWhiteSpace; }	/** Return the position, in the original source file, of this node or attribute.		The row and column are 1-based. (That is the first row and first column is		1,1). If the returns values are 0 or less, then the parser does not have		a row and column value.		Generally, the row and column value will be set when the TiXmlDocument::Load(),		TiXmlDocument::LoadFile(), or any TiXmlNode::Parse() is called. It will NOT be set		when the DOM was created from operator>>.		The values reflect the initial load. Once the DOM is modified programmatically		(by adding or changing nodes and attributes) the new values will NOT update to		reflect changes in the document.		There is a minor performance cost to computing the row and column. Computation		can be disabled if TiXmlDocument::SetTabSize() is called with 0 as the value.		@sa TiXmlDocument::SetTabSize()	*/	int Row() const			{ return location.row + 1; }	int Column() const		{ return location.col + 1; }	///< See Row()	void  SetUserData( void* user )			{ userData = user; }	///< Set a pointer to arbitrary user data.	void* GetUserData()						{ return userData; }	///< Get a pointer to arbitrary user data.	const void* GetUserData() const 		{ return userData; }	///< Get a pointer to arbitrary user data.	// Table that returs, for a given lead byte, the total number of bytes	// in the UTF-8 sequence.	static const int utf8ByteTable[256];	virtual const char* Parse(	const char* p, 								TiXmlParsingData* data, 								TiXmlEncoding encoding /*= TIXML_ENCODING_UNKNOWN */ ) = 0;	/** Expands entities in a string. Note this should not contian the tag's '<', '>', etc, 		or they will be transformed into entities!	*/	static void EncodeString( const TIXML_STRING& str, TIXML_STRING* out );	enum	{		TIXML_NO_ERROR = 0,		TIXML_ERROR,		TIXML_ERROR_OPENING_FILE,		TIXML_ERROR_OUT_OF_MEMORY,		TIXML_ERROR_PARSING_ELEMENT,		TIXML_ERROR_FAILED_TO_READ_ELEMENT_NAME,		TIXML_ERROR_READING_ELEMENT_VALUE,		TIXML_ERROR_READING_ATTRIBUTES,		TIXML_ERROR_PARSING_EMPTY,		TIXML_ERROR_READING_END_TAG,		TIXML_ERROR_PARSING_UNKNOWN,		TIXML_ERROR_PARSING_COMMENT,		TIXML_ERROR_PARSING_DECLARATION,		TIXML_ERROR_DOCUMENT_EMPTY,		TIXML_ERROR_EMBEDDED_NULL,		TIXML_ERROR_PARSING_CDATA,		TIXML_ERROR_DOCUMENT_TOP_ONLY,		TIXML_ERROR_STRING_COUNT	};protected:	static const char* SkipWhiteSpace( const char*, TiXmlEncoding encoding );	inline static bool IsWhiteSpace( char c )			{ 		return ( isspace( (unsigned char) c ) || c == '\n' || c == '\r' ); 	}	inline static bool IsWhiteSpace( int c )	{		if ( c < 256 )			return IsWhiteSpace( (char) c );		return false;	// Again, only truly correct for English/Latin...but usually works.	}	#ifdef TIXML_USE_STL	static bool	StreamWhiteSpace( std::istream * in, TIXML_STRING * tag );	static bool StreamTo( std::istream * in, int character, TIXML_STRING * tag );	#endif	/*	Reads an XML name into the string provided. Returns		a pointer just past the last character of the name,		or 0 if the function has an error.	*/	static const char* ReadName( const char* p, TIXML_STRING* name, TiXmlEncoding encoding );	/*	Reads text. Returns a pointer past the given end tag.		Wickedly complex options, but it keeps the (sensitive) code in one place.	*/	static const char* ReadText(	const char* in,				// where to start									TIXML_STRING* text,			// the string read									bool ignoreWhiteSpace,		// whether to keep the white space									const char* endTag,			// what ends this text									bool ignoreCase,			// whether to ignore case in the end tag									TiXmlEncoding encoding );	// the current encoding	// If an entity has been found, transform it into a character.	static const char* GetEntity( const char* in, char* value, int* length, TiXmlEncoding encoding );	// Get a character, while interpreting entities.	// The length can be from 0 to 4 bytes.	inline static const char* GetChar( const char* p, char* _value, int* length, TiXmlEncoding encoding )	{		assert( p );		if ( encoding == TIXML_ENCODING_UTF8 )		{			*length = utf8ByteTable[ *((const unsigned char*)p) ];			assert( *length >= 0 && *length < 5 );		}		else		{			*length = 1;		}		if ( *length == 1 )		{			if ( *p == '&' )				return GetEntity( p, _value, length, encoding );			*_value = *p;			return p+1;		}		else if ( *length )		{			//strncpy( _value, p, *length );	// lots of compilers don't like this function (unsafe),												// and the null terminator isn't needed			for( int i=0; p[i] && i<*length; ++i ) {				_value[i] = p[i];			}			return p + (*length);		}		else		{			// Not valid text.			return 0;		}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久精品费精品国产一区二区| 国产欧美精品在线观看| 欧美网站一区二区| 在线观看亚洲成人| 91亚洲精品乱码久久久久久蜜桃| 成人激情视频网站| 99久久亚洲一区二区三区青草| 成人免费视频视频| a级精品国产片在线观看| 成人av资源在线| 99久久99久久精品免费观看| 91麻豆国产在线观看| 色综合久久久久综合体| 色诱视频网站一区| 91福利视频久久久久| 欧美视频中文字幕| 欧美一区二区三区成人| 日韩午夜电影av| 久久―日本道色综合久久| 久久久亚洲精品一区二区三区| 久久婷婷综合激情| 国产精品高清亚洲| 一区二区三区四区中文字幕| 性做久久久久久| 美女国产一区二区| 国产成人亚洲精品狼色在线 | caoporn国产一区二区| 91蜜桃视频在线| 欧美久久久久久蜜桃| 精品国产91久久久久久久妲己| 亚洲国产精品精华液2区45| 亚洲欧洲日本在线| 天天影视涩香欲综合网| 国模冰冰炮一区二区| av男人天堂一区| 欧美美女网站色| 久久精品在线免费观看| 亚洲精品国产无天堂网2021| 日韩精品色哟哟| 成人永久aaa| 精品视频在线免费| 久久综合五月天婷婷伊人| 亚洲人成人一区二区在线观看| 视频在线在亚洲| 成人免费视频app| 91麻豆精品国产综合久久久久久| 久久色在线观看| 亚洲一区免费视频| 毛片一区二区三区| 一本一道久久a久久精品| 欧美一区二区精美| 综合激情网...| 色狠狠桃花综合| 日韩写真欧美这视频| 最近日韩中文字幕| 久久精品99国产精品| 91美女片黄在线观看| 精品国产凹凸成av人导航| 亚洲黄色尤物视频| 国产毛片精品一区| 在线播放/欧美激情| 亚洲欧洲日韩综合一区二区| 久久99精品久久久| 欧美视频第二页| 国产精品视频一二| 久久99国产精品麻豆| 欧洲另类一二三四区| 国产女人水真多18毛片18精品视频 | 欧美理论电影在线| 亚洲欧洲精品一区二区三区| 久久电影网电视剧免费观看| 欧美性xxxxx极品少妇| 国产欧美精品一区二区三区四区| 奇米综合一区二区三区精品视频| 色播五月激情综合网| 中文字幕欧美三区| 激情综合色综合久久| 欧美裸体一区二区三区| 一区二区在线观看免费| 岛国av在线一区| 久久精品亚洲精品国产欧美kt∨| 日本一不卡视频| 欧美日韩久久久一区| 悠悠色在线精品| 一本一道波多野结衣一区二区| 亚洲国产精品v| 国产成人av电影| 亚洲国产日韩一级| 91免费版pro下载短视频| 国产三级三级三级精品8ⅰ区| 另类小说一区二区三区| 在线电影欧美成精品| 亚洲国产视频在线| 欧美三级日韩在线| 亚洲一级电影视频| 91精品1区2区| 亚洲免费观看高清在线观看| 91免费视频网| 亚洲人成网站在线| 色狠狠综合天天综合综合| 亚洲视频一二区| 一本到一区二区三区| 一区二区三区在线视频观看| 91麻豆精品视频| 一区二区欧美视频| 欧美在线啊v一区| 亚洲国产综合色| 在线不卡a资源高清| 日本视频在线一区| 精品88久久久久88久久久| 韩国av一区二区三区在线观看| 精品国产一区a| 久久99国产精品久久| 国产网站一区二区三区| 成人毛片老司机大片| 综合久久久久久| 欧美中文字幕久久| 日韩国产精品久久久久久亚洲| 亚洲制服丝袜av| 欧美性一二三区| 麻豆视频一区二区| 久久香蕉国产线看观看99| 国产激情一区二区三区| 国产精品久久久久国产精品日日 | 日韩亚洲欧美综合| 国产在线视视频有精品| 亚洲国产精华液网站w| 91一区在线观看| 爽好久久久欧美精品| 精品电影一区二区| 成人av资源网站| 一区二区三区在线视频播放| 这里只有精品免费| 国产iv一区二区三区| 国产精品福利在线播放| 欧美男女性生活在线直播观看| 久久成人免费日本黄色| 国产精品少妇自拍| 欧美日韩国产天堂| 久久99国产精品尤物| 中文字幕亚洲电影| 7777精品伊人久久久大香线蕉超级流畅| 蜜桃精品视频在线观看| 国产精品午夜免费| 欧美日韩国产在线播放网站| 国产一区二区视频在线| 有码一区二区三区| 精品精品国产高清一毛片一天堂| www.亚洲人| 色偷偷久久人人79超碰人人澡| 亚洲国产精品久久人人爱蜜臀| 欧美不卡激情三级在线观看| 大尺度一区二区| 热久久国产精品| 自拍偷在线精品自拍偷无码专区 | 亚洲男女一区二区三区| 日韩免费高清av| 91美女片黄在线观看| 精品一区二区三区视频 | 91在线视频免费91| 久久成人免费日本黄色| 亚洲免费观看视频| 久久久亚洲综合| 337p亚洲精品色噜噜| 东方欧美亚洲色图在线| 丝瓜av网站精品一区二区| 中文字幕在线观看一区| 日韩免费观看高清完整版| 色狠狠桃花综合| 国产99久久久国产精品潘金网站| 日韩avvvv在线播放| 亚洲美女免费视频| 日本一区二区三区dvd视频在线| 欧美日韩精品综合在线| gogo大胆日本视频一区| 久久99在线观看| 亚洲成a天堂v人片| 亚洲少妇中出一区| 久久久久9999亚洲精品| 日韩欧美高清dvd碟片| 欧洲国产伦久久久久久久| 日韩美女一区二区三区四区| 欧美日韩aaaaaa| 色网综合在线观看| heyzo一本久久综合| 高清在线观看日韩| 国产在线观看一区二区| 捆绑紧缚一区二区三区视频| 亚洲图片自拍偷拍| 亚洲精品网站在线观看| 亚洲欧洲av一区二区三区久久| 久久亚洲影视婷婷| 欧美刺激午夜性久久久久久久| 欧美精品黑人性xxxx| 精品视频色一区| 欧美性猛交xxxxxx富婆| 日本韩国欧美三级| 91美女精品福利| 在线视频中文字幕一区二区| 91高清视频在线|