Dave wrote:
In standard C++, is it required that preprocessing directives (#include,
#if, etc...) start in column 0, or is that just a C thing?
Obsolete Cs required column 0, I think. But the modern standards are
probably "first non-blank character is a # in a line".
Curiously, blanks may occur between the # and the following directive. So to
indent nested directives you could do this...
#ifndef db
# ifndef _DEBUG
# error don't use this in release mode
# endif
# include <sstream>
# include <iostream>
# include <string>
....or this:
#ifndef db
#ifndef _DEBUG
#error don't use this in release mode
#endif
#include <sstream>
#include <iostream>
#include <string>
--
Phlip