Ответ 1
Да. Это выглядит хорошо.
Хотя я заказываю свои заголовки по-разному (но в алфавитном порядке в порядке).
Единственное, что я могу изменить, это включить охранник. Я делаю include my namspace, а также имя класса. Поскольку несколько раз у меня есть классы с тем же именем (но в другом пространстве имен), которые используются одним и тем же кодом.
#ifndef MY_COMPANY_MY_NAME_SPACE_MYCLASSNAME_H // header guards
#define MY_COMPANY_MY_NAME_SPACE_MYCLASSNAME_H
#include "a.h" // includes in order of most specific to most general.
// My includes first.
// Then C++ headers <vector>
// I group all the containers together.
// Then C specific headers <sys/bla.h>
// Then C generic headers <ctype.h>
namespace MyNamespace
{
Class ClassName
{
};
}
#endif