Click here to Skip to main content
15,920,383 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: Const VS Defines Pin
chaq68616-Feb-15 17:46
professionalchaq68616-Feb-15 17:46 
GeneralRe: Const VS Defines Pin
Peter_in_278016-Feb-15 18:52
professionalPeter_in_278016-Feb-15 18:52 
AnswerRe: Const VS Defines Pin
Freak3016-Feb-15 21:43
Freak3016-Feb-15 21:43 
QuestionMessage Closed Pin
16-Feb-15 22:10
mveCPallini16-Feb-15 22:10 
AnswerMessage Closed Pin
16-Feb-15 22:52
professionalOrjan Westin16-Feb-15 22:52 
AnswerRe: Const VS Defines Pin
Orjan Westin16-Feb-15 23:02
professionalOrjan Westin16-Feb-15 23:02 
GeneralRe: Const VS Defines Pin
SoMad17-Feb-15 5:13
professionalSoMad17-Feb-15 5:13 
GeneralRe: Const VS Defines Pin
Albert Holguin17-Feb-15 10:40
professionalAlbert Holguin17-Feb-15 10:40 
GeneralRe: Const VS Defines Pin
Orjan Westin17-Feb-15 23:38
professionalOrjan Westin17-Feb-15 23:38 
AnswerRe: Const VS Defines Pin
Albert Holguin17-Feb-15 10:42
professionalAlbert Holguin17-Feb-15 10:42 
GeneralRe: Const VS Defines Pin
Daniel Pfeffer18-Feb-15 6:13
professionalDaniel Pfeffer18-Feb-15 6:13 
GeneralRe: Const VS Defines Pin
Albert Holguin18-Feb-15 8:42
professionalAlbert Holguin18-Feb-15 8:42 
GeneralRe: Const VS Defines Pin
Daniel Pfeffer18-Feb-15 21:53
professionalDaniel Pfeffer18-Feb-15 21:53 
GeneralRe: Const VS Defines Pin
Stefan_Lang18-Feb-15 22:22
Stefan_Lang18-Feb-15 22:22 
GeneralRe: Const VS Defines Pin
Daniel Pfeffer18-Feb-15 22:50
professionalDaniel Pfeffer18-Feb-15 22:50 
GeneralRe: Const VS Defines Pin
Stefan_Lang19-Feb-15 0:33
Stefan_Lang19-Feb-15 0:33 
GeneralRe: Const VS Defines Pin
Stefan_Lang18-Feb-15 22:08
Stefan_Lang18-Feb-15 22:08 
AnswerRe: Const VS Defines Pin
den2k8818-Feb-15 22:52
professionalden2k8818-Feb-15 22:52 
I usually use consts or better still enums.
The main problem I came to find with defines is namespace pollution - in many places you'd have constants named MAX_FILENAME_LENGHT and it is possible, depending on the use you make of this constant, that they differ. Using a define you'd probably end up with a redefine or nasty bug somewhere, using constants and enums you can keep them enclosed in a class, which is often what is needed.

Enums are still better as they build another inner namespace, further reducing namespace pollution. For the same reason I often enclose the data members that makes sense only when taken together into inner structs inside the definition of the classes, this way you have an easy way to pass an entire block of information between functions and can reuse common names (as Length used with different meanings in different places, avoiding C-like horrors like DataPadLenght, DataPayloadLenght, DataReservedAllocationLength, FileNameLenght...).
Geek code v 3.12
GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- r++>+++ y+++*
Weapons extension: ma- k++ F+2 X

QuestionAdd Record in MySQL Pin
Django_Untaken16-Feb-15 3:22
Django_Untaken16-Feb-15 3:22 
AnswerRe: Add Record in MySQL Pin
Richard Andrew x6416-Feb-15 5:25
professionalRichard Andrew x6416-Feb-15 5:25 
AnswerRe: Add Record in MySQL Pin
Jochen Arndt16-Feb-15 6:02
professionalJochen Arndt16-Feb-15 6:02 
Question'RegisterClass' - MS Documentation Error? Pin
Bram van Kampen15-Feb-15 14:39
Bram van Kampen15-Feb-15 14:39 
AnswerRe: 'RegisterClass' - MS Documentation Error? Pin
Richard Andrew x6415-Feb-15 16:28
professionalRichard Andrew x6415-Feb-15 16:28 
GeneralRe: 'RegisterClass' - MS Documentation Error? Pin
Bram van Kampen15-Feb-15 18:17
Bram van Kampen15-Feb-15 18:17 
AnswerRe: 'RegisterClass' - MS Documentation Error? Pin
Daniel Pfeffer15-Feb-15 20:32
professionalDaniel Pfeffer15-Feb-15 20:32 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.