class Base
{
public:
Base(){}
virtual ~Base(){}
private:
Base(const Base &other) ; // Only declaration! No definition.
Base &operator=(const Base &other);
} ;
int main(int argc, char* argv[])
{
const Base b ; // ok
const Base *pb = &Base() ; // ok
const Base &qb = Base() ; // Illegal, why?
return 0;
}