TITLE: Built in types as classes PROBLEM: kim@IASTATE.EDU (Jungsun Kim) I had a debate with my friend over the eligibility of built-in data types like integer, double, and etc. to become a class. What I meant is that can we consider the built-in types as classes in C++? RESPONSE: steve@taumet.com (Steve Clamage), 30 Mar 93 The built-in types are not full-fledged classes, in the sense that you cannot derive from them. Since classes are types, the built-in types have things in common with classes. You can use a built-in type as a "class" argument for a template: template class X { ... }; X x; // "int" used as a "class" Officially, built-in types have constructors and destructors which may be invoked, although not all current compilers support the notion. int j(3); // invokes copy constructor int::int(const int&) int k; // invokes default constructor int::int(void) j.int::~int(); // "destroy" j The constructors and destructors have little to do, and while a compiler might internally treat such code in the same way as for user-defined classes, it is more likely that these will be treated as special cases.