Menu (plain HTML) |
Menu (powered by javascript) |
Coding Conventions
These coding conventions helps you to know promptly most variables and functions properties. Obs.: I use code completion facility from Anjuta IDE, I mean long identifiers aren't a problem :). Variable (begins with) g_... global m_... class/struct member ...s... static below here is used also at Function return types ...p... type pointer (if only 'p' then it is 'void*') ...b... type bool ...i... type int ...l... type long ...ll... type long long ...f... type float ...d... type double ...ld... type long double ...n... type cNumber ...c... type char ...cp... type cCharPointer ...str... type cString ...D... type cData ...vp... type cVectorPointer ...PH... type cPointerHolder ...dt... type cDateTime ...ch... type cChronometer ...fl... type cFile Examples: m_sstrTemp class member, static, cString vpList cVectorPointer g_pcName global, char* Function (Begins With) s... static Function (Ends with) ... ex.: void Func(){} ..._T ex.: cString& cString::Func_T (){return *this;} //str.Func_T () .Get_pc(); ..._pT ex.: cString* cString::Func_pT(){return this;} //str.Func_pT()->Get_pc(); ..._* see Function return at Variable info above Examples: sFunc() static function that returns void Func_b() return bool sFunc_pD() static function that returns cData* Func_T() function from class/struc that return *this (self object) Specific Name of Variable or Function ex.: DataStructureValueFind_pD(), is not properly written in english. But if I want to group several methods that relate to specific funcionality I should write that way. See examples: DataStructureValueFind_pD() DataStructureValueChange () DataStructureValueClear () DataStructureValueCheck_b() If I had not used this method, lets see what happens: FindValueAtDataStructure_pD() ChangeValueAtDataStructure () ClearValueAtDataStructure () CheckValueAtDataStructure_b() These last methods will surely mix on a list with other methods that begin with Find... Change... etc... About the static methods (that begin with 's'), well noway ;), they will mix first with other static methods that is also a specific functionality as they don't depend on an object to be run (this->...). PS.: If you find any method that is not named in the above form (betas had a lot), send me email to fix it. Thanks :) |