Best way of incorporating a set of data structures in a project?
Hi!
A simple question really, but I can't think of a simple solution: I have a number of data structures, defines and overloaded operators that I want to use for my entire project (all classes). Now, at the moment I've just chucked them all in a single file, which I include in all my headers (one header file per class). The problem is, when I then include these headers in another file (eg. main.cpp), that file sees multiple definitions and redefinitions of the same structures, which generates a compile error.
So what is the usual way of doing this? It must be a fairly common thing to do, yes?
If they are in a header file, just do this:
This should prevent what you're talking about.
// start of header file#ifndef _HEADERFILENAME_#define _HEADERFILENAME_// very end of header file#endif
This should prevent what you're talking about.
you should use somethine like this, an include guard...
#ifndef HWHATEVER
#define HWHATEVER
//header contents here...
#endif
HWHATEVER can be anything, I ussually prefix with H and the name of the header buts thats all up to you.
Edit: Endar beat me too it...
#ifndef HWHATEVER
#define HWHATEVER
//header contents here...
#endif
HWHATEVER can be anything, I ussually prefix with H and the name of the header buts thats all up to you.
Edit: Endar beat me too it...
So in my Structs.h file, I just go:
Does that sound about right?
#ifndef Structs#define Structs// Data, code and all that#endif
Does that sound about right?
Quote:Original post by Naigewron
So in my Structs.h file, I just go:
*** Source Snippet Removed ***
Does that sound about right?
I'd personally slap an _H or an _HPP on there (depending on the extension) just to make it unique.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement