You can use a built-in type or a class object as the type for the
Stack<Type> class template. What about a pointer? For example, can you use a pointer to a
char instead of a
string object in Listing 14.14? After all, such pointers are the built-in way for handling C-style strings. The answer is that you can create a stack of pointers, but it won’t work very well without major modifications in the program. The compiler can create the class, but it’s your task to see that it’s used sensibly. Let’s see why such a stack of pointers doesn’t work very well with Listing 14.14, and then let’s look at an example where a stack of pointers is useful.
Let’s quickly look at three simple, ...