Click here to Skip to main content
15,921,884 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
AnswerRe: how to add button on listcontrol instead of scrollbar Pin
Hans Dietrich7-Apr-11 23:47
mentorHans Dietrich7-Apr-11 23:47 
Questionadd button to listcontrol Pin
rajniyadav1a7-Apr-11 21:53
rajniyadav1a7-Apr-11 21:53 
AnswerRe: add button to listcontrol Pin
Hans Dietrich7-Apr-11 21:58
mentorHans Dietrich7-Apr-11 21:58 
AnswerRe: add button to listcontrol Pin
«_Superman_»8-Apr-11 3:36
professional«_Superman_»8-Apr-11 3:36 
Questionadd button to listcontrol Pin
rajniyadav1a7-Apr-11 21:42
rajniyadav1a7-Apr-11 21:42 
AnswerRe: add button to listcontrol Pin
Hans Dietrich7-Apr-11 21:44
mentorHans Dietrich7-Apr-11 21:44 
QuestionLoading release Build bt not hybrid Pin
002comp7-Apr-11 20:28
002comp7-Apr-11 20:28 
AnswerRe: Loading release Build bt not hybrid Pin
Hans Dietrich7-Apr-11 21:42
mentorHans Dietrich7-Apr-11 21:42 
QuestionDynamic shared memory Pin
pandit847-Apr-11 19:35
pandit847-Apr-11 19:35 
QuestionHow can I read ODBC from registry ? Pin
_Flaviu7-Apr-11 9:59
_Flaviu7-Apr-11 9:59 
GeneralRe: How can I read ODBC from registry ? Pin
David Crow7-Apr-11 18:06
David Crow7-Apr-11 18:06 
GeneralRe: How can I read ODBC from registry ? Pin
_Flaviu7-Apr-11 19:14
_Flaviu7-Apr-11 19:14 
GeneralRe: How can I read ODBC from registry ? Pin
_Flaviu7-Apr-11 19:52
_Flaviu7-Apr-11 19:52 
QuestionWM_KICKIDLE Message and Cursor? Pin
Arrin7-Apr-11 4:37
Arrin7-Apr-11 4:37 
QuestionGlobal array question [modified] Pin
Cristoff6-Apr-11 23:48
Cristoff6-Apr-11 23:48 
AnswerRe: Global array question Pin
«_Superman_»7-Apr-11 0:18
professional«_Superman_»7-Apr-11 0:18 
GeneralRe: Global array question Pin
Cristoff7-Apr-11 0:30
Cristoff7-Apr-11 0:30 
GeneralRe: Global array question Pin
«_Superman_»7-Apr-11 0:34
professional«_Superman_»7-Apr-11 0:34 
GeneralRe: Global array question Pin
Cristoff7-Apr-11 0:59
Cristoff7-Apr-11 0:59 
AnswerRe: Global array question [modified] Pin
Luc Pattyn7-Apr-11 1:48
sitebuilderLuc Pattyn7-Apr-11 1:48 
GeneralRe: Global array question Pin
Cristoff8-Apr-11 0:14
Cristoff8-Apr-11 0:14 
GeneralRe: Global array question Pin
Luc Pattyn8-Apr-11 0:19
sitebuilderLuc Pattyn8-Apr-11 0:19 
AnswerRe: Global array question PinPopular
Stefan_Lang7-Apr-11 2:18
Stefan_Lang7-Apr-11 2:18 
If you have plenty of such variables or declarations you can use a macro to automatically use the declaration in your header file as a definition exactly once:
// globals.h
#ifndef GLOBALS_H
#define GLOBALS_H

#ifdef GLOBALS_C
#  define MYGLOBAL_API
#else
#  define MYGLOBAL_API extern
#endif

MYGLOBAL_API int someMap[MAPSIZE_X][MAPSIZE_Y];

#undef MYGLOBAL_API // clean up - we won't need that symbol outside this header
#endif

// globals.c
#define GLOBALS_C // MYGLOBAL_API will be resolved to empty string
#include "globals.h" // defines the globals

// every_other_soucre_file.c
#include "globals.h" // declares the globals, but doesn't define them
//...


Using this technique, adding another global variable just requires adding it to globals.h, you never have to touch globals.c (or any other file) for that purpose!

That said, it is always a good idea to keep the number of globals to a minimum, or, if possible, not use any at all. It's always very difficult to track an error that leaves a global in a bad state, because the problem may be caused anywhere in your program!
GeneralRe: Global array question Pin
Albert Holguin7-Apr-11 3:51
professionalAlbert Holguin7-Apr-11 3:51 
GeneralRe: Global array question Pin
Cristoff8-Apr-11 0:16
Cristoff8-Apr-11 0:16 

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.