Skip to Content
Navigating C++ and Object-Oriented Design
book

Navigating C++ and Object-Oriented Design

by Paul Anderson, Gail Anderson
October 1997
Intermediate to advanced
800 pages
20h 48m
English
Pearson
Content preview from Navigating C++ and Object-Oriented Design

10.11. Template Nested Classes

Nested Classes” on page 250 shows how nontemplate classes nest other nontemplate classes. Here's the nesting format with templates.

template <class TYPE> 
class Outer {                  // enclosing class
   . . .
   class Inner {               // enclosed class (nested)
      . . .
   };
   . . .
};

Nested classes improve encapsulation by hiding the visibility of enclosed classes. Class Inner may be a nontemplate class or a template class. This implies that only one-to-one relationships hold between nested classes and template classes. It's also possible to specify nested member template functions, which we will look at later on (see “Member Templates” on page 456).

Here's an example of nesting template classes.

 template <class TYPE> class Scheduler { // enclosing ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Exploring C++20: The Programmer's Introduction to C++

Exploring C++20: The Programmer's Introduction to C++

Ray Lischner

Publisher Resources

ISBN: 0135327482Purchase book