How are C++ include guards typically named? I tend to see this a lot:
#ifndef FOO_H
#define FOO_H
// ...
#endif
However, I don\'t think
I personally follow Boost's recommendation. It's perhaps one of the largest collection of C++ libraries of good quality around and they don't have problem.
It goes like:
__...____INCLUDED
// include/pet/project/file.hpp
#ifndef PET_PROJECT_FILE_HPP_INCLUDED
which is:
_[A-Z] or containing __ is not)INCLUDED you're spoiling for a fight)I've read about GUID but those look weird.
And obviously I'd rather than all compilers implement #pragma once (or better, #pragma multiple and "once" be the default behavior...)