📄 pgm09_08.cpp
字号:
//// This file contains the C++ code from Program 9.8 of// "Data Structures and Algorithms// with Object-Oriented Design Patterns in C++"// by Bruno R. Preiss.//// Copyright (c) 1998 by Bruno R. Preiss, P.Eng. All rights reserved.//// http://www.pads.uwaterloo.ca/Bruno.Preiss/books/opus4/programs/pgm09_08.cpp//bool Tree::Iter::IsDone () const { return stack.IsEmpty (); }Object& Tree::Iter::operator * () const{ if (!stack.IsEmpty ()) { Tree const& top = dynamic_cast<Tree const&> (stack.Top ()); return top.Key (); } else return NullObject::Instance ();}void Tree::Iter::operator ++ (){ if (!stack.IsEmpty ()) { Tree const& top = dynamic_cast<Tree const&> (stack.Pop ()); for (int i = top.Degree () - 1; i >= 0; --i) { Tree& subtree = top.Subtree (i); if (!subtree.IsEmpty ()) stack.Push (subtree); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -