title: abstract class declarations in c++
body: <p>Suppose <code>foo</code> is an <em>abstract</em> <code>class</code> in a C++ program, why is it acceptable to declare variables of type <code>foo*</code>, but not of type <code>foo</code>?</p>