> > > > The Qt coding conventions > > (http://qt-project.org/wiki/Coding-Conventions) > > recommend using an enum over 'const int'. > > > > The rationale given there is that an enum will be replaced at > > compile-time resulting in 'faster code'. Won't that be the case with > > 'const int' as well? I think a 'const int' will be inlined in the code. > > CMIIW. > > That is the case, *except* if you pass it via const-ref. If you do that, then > ODR > kicks in and you need to have the variable defined somewhere. > > For variables in the file scope, the declaration is the definition, so it's > not a > problem. For variables in a class scope, the static const declaration is > *not* the definition. >
One place where const is better, is where you want a type other than int. Like bool. (Often in metafunction templates, the ::value result is either true or false.) Or if you want a specific size of int, since enums (until C++11) don't have a specific size. Tony _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development