TinyXML原始碼剖析 之二

2021-04-17 10:53:30 字數 1311 閱讀 6524

讀乙個xml檔案

前面簡要的分析了一下,如何用

tinyxml

完成乙個

dom樹的輸出,這兒將要給出乙個如何讀入

xml檔案,並提取其中資料的案例

:前乙份文件寫了,用

tinyxml

輸出dom,

與讀入xml

檔案為dom

的第一步驟就是例項化乙個

tinyxmldocument

的物件。

#include

#include

"tinyxml.h"

using

namespace std;

class

tixmldocument;

intmain(int argc, char** argv)

… // (2)

mydoc->loadfile();

取得根元素.的並輸出的操作

tixmlelement* rootelement = mydoc->rootelement();

cout <<>value() <<>

這與前面的linkendchild在理論上是乙個相對應的操作

tixmlelement* firstperson = rootelement->firstchildelement();

// get the first persons's node name && age and attribute id

tixmlelement *nameelement = firstperson->firstchildelement();

tixmlelement *ageelement = nameelement->nextsiblingelement();

此句**需要主意的是,由於元素的內部的attributeset是通過雙向鍊錶來放置屬性的,且它有乙個哨兵節點,該節點一直被放置在最後,而firstattribute()會在內部呼叫

first()

last() const

tixmlattribute *idattribute = firstperson->firstattribute();

在此ageelement/nameelement的子女就是text型別的物件,對之取值就是前文的

」周星星

」/20

cout <<>firstchild() ->value() <<>

cout <<>firstchild() ->value() <<>

cout <<>value() <<>

}

原始碼剖析 Hashtable 原始碼剖析

hashtable同樣是基於雜湊表實現的,同樣每個元素都是key value對,其內部也是通過單鏈表解決衝突問題,容量不足 超過了閾值 時,同樣會自動增長。hashtable也是jdk1.0引入的類,是執行緒安全的,能用於多執行緒環境中。hashtable同樣實現了serializable介面,它支...

python原始碼剖析 Python原始碼剖析

第頁共 頁python 原始碼剖析 物件機制 1.物件 在python 的世界中,一切都是物件,乙個整數是乙個物件,乙個字串也是 乙個物件,更為奇妙的是,型別也是乙個物件,整數型別是乙個物件,字串類 型也是乙個物件。從 年guido 在那個聖誕節揭開 python 世界的大幕開始,一直到現在,pyt...

Erlang hotwheels原始碼剖析

整體構架 janus transport sup 實質為transport,supervisor,client instance supervisor 每個tcp會話建立乙個transport程序來處理對應客戶端的請求。janus topman sup 實質為topman,worker,topic ...