diff --git a/Trie.cpp b/Trie.cpp index f5eaa9d..de26d24 100644 --- a/Trie.cpp +++ b/Trie.cpp @@ -2,6 +2,16 @@ namespace CppJieba { + Trie::iterator Trie::begin() + { + return Trie::iterator(_root); + } + + Trie::iterator Trie::end() + { + return Trie::iterator(NULL); + } + Trie::Trie() { _root = NULL; @@ -167,8 +177,11 @@ using namespace CppJieba; int main() { Trie trie; - //trie.init("test/dict.txt"); - trie.init("dict.txt"); + trie.init("test/dict.txt"); + cout<count<() const + { + return ptNode; + } + + bool operator==(const TrieNodeIterator& x) const + { + return ptNode == x.ptNode; + } + + bool operator!=(const TrieNodeIterator& x) const + { + return ptNode != x.ptNode; + } + }; + class Trie { private: TrieNode* _root; + public: + typedef TrieNodeIterator iterator; + public: + iterator begin(); + iterator end(); public: Trie(); ~Trie();