pgm09_08.cpp
来自「C++ 数据结构算法大全 包括了几乎所有常用算法」· C++ 代码 · 共 41 行
CPP
41 行
//// 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 + =
减小字号Ctrl + -
显示快捷键?