Click here to Skip to main content
15,886,518 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: Where do you place your #includes? Pin
den2k8829-Jan-19 21:12
professionalden2k8829-Jan-19 21:12 
AnswerRe: Where do you place your #includes? Pin
mo149229-Jan-19 2:27
mo149229-Jan-19 2:27 
GeneralRe: Where do you place your #includes? Pin
den2k8829-Jan-19 21:10
professionalden2k8829-Jan-19 21:10 
GeneralRe: Where do you place your #includes? Pin
Klaus-Werner Konrad24-Apr-19 4:31
Klaus-Werner Konrad24-Apr-19 4:31 
AnswerRe: Where do you place your #includes? Pin
CPallini29-Jan-19 10:49
mveCPallini29-Jan-19 10:49 
GeneralRe: Where do you place your #includes? Pin
den2k8829-Jan-19 21:07
professionalden2k8829-Jan-19 21:07 
GeneralRe: Where do you place your #includes? Pin
CPallini29-Jan-19 22:07
mveCPallini29-Jan-19 22:07 
AnswerRe: Where do you place your #includes? Pin
Stefan_Lang29-Jan-19 22:28
Stefan_Lang29-Jan-19 22:28 
I never put includes into a header file if I can avoid it using forward declarations. Any source code file including that header then can decide for itself whether it needs (and must include) the full declaration.

There's no benefit to put includes into headers other than saving a little typing in your source files that may need some more include statements than usual. (and you could actually reduce or avoid that if you just put commonly used headers in your .PCH file instead)
But there's a high risk in doing so: macros breaking other source files (e. g. the min and max macros #defined when including windows.h breaking STL code); the global name space cluttered with thousands of symbols that may conflict with local names; and compilers silently resolving a function call to something different than you expect because of such conflicts.

There are several benefits to avoiding includes in headers, such as reducing response times of any tool or functionality that requires parsing your code (including your language-sensitve text editor and compiler), and avoiding unnecessary clutter in your global namespace. It's also informative to see what the declarations inside of a header (or source) file really depend on.
GOTOs are a bit like wire coat hangers: they tend to breed in the darkness, such that where there once were few, eventually there are many, and the program's architecture collapses beneath them. (Fran Poretto)

AnswerRe: Where do you place your #includes? Pin
leon de boer30-Jan-19 2:26
leon de boer30-Jan-19 2:26 
QuestionPf Pin
Member 1412898028-Jan-19 8:25
Member 1412898028-Jan-19 8:25 
AnswerRe: Pf Pin
CPallini28-Jan-19 9:20
mveCPallini28-Jan-19 9:20 
QuestionWin API or other? Pin
chipp_zanuff26-Jan-19 5:12
chipp_zanuff26-Jan-19 5:12 
AnswerRe: Win API or other? Pin
Victor Nijegorodov26-Jan-19 5:33
Victor Nijegorodov26-Jan-19 5:33 
AnswerRe: Win API or other? Pin
Joe Woodbury28-Jan-19 12:37
professionalJoe Woodbury28-Jan-19 12:37 
AnswerRe: Win API or other? Pin
leon de boer28-Jan-19 17:07
leon de boer28-Jan-19 17:07 
Questionc++ MS Word Pin
Member 1238494426-Jan-19 5:03
Member 1238494426-Jan-19 5:03 
AnswerRe: c++ MS Word Pin
jeron126-Jan-19 6:30
jeron126-Jan-19 6:30 
GeneralRe: c++ MS Word Pin
Member 1238494428-Jan-19 2:48
Member 1238494428-Jan-19 2:48 
AnswerRe: c++ MS Word Pin
Stefan_Lang28-Jan-19 2:11
Stefan_Lang28-Jan-19 2:11 
QuestionHow to print all source code what was running? Pin
Member 1308136924-Jan-19 16:35
Member 1308136924-Jan-19 16:35 
AnswerRe: How to print all source code what was running? Pin
Victor Nijegorodov24-Jan-19 20:49
Victor Nijegorodov24-Jan-19 20:49 
GeneralRe: How to print all source code what was running? Pin
Member 1308136924-Jan-19 21:54
Member 1308136924-Jan-19 21:54 
GeneralRe: How to print all source code what was running? Pin
HS_C_Student26-Jan-19 4:06
HS_C_Student26-Jan-19 4:06 
GeneralRe: How to print all source code what was running? Pin
Member 1308136926-Jan-19 11:22
Member 1308136926-Jan-19 11:22 
AnswerRe: How to print all source code what was running? Pin
Richard MacCutchan24-Jan-19 22:12
mveRichard MacCutchan24-Jan-19 22:12 

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.