Я работаю над большим проектом, который использует STL, и у вас есть вопрос о вашем предпочтительном способе организации вашего STL #includes
.Как организовать заголовки STL?
- Вы предпочитаете # включать каждый заголовок в исходный файл, который он использует. Например, если оба
foo.cpp
иbar.cpp
требуютstd::string
, то оба они будут#include <string>
. - Вы предпочитаете иметь один файл заголовка, который включает все заголовки STL, которые использует ваш проект (т. Е. Добавить их в предварительно скомпилированный заголовок MS 'stdafx.h').
Преимущество первого метода состоит в том, что файл .cpp является самостоятельной единицей и может быть использован в другом проекте, не беспокоясь, что вам не хватает на #include
. Преимущества второго метода заключаются в том, что вы можете использовать предварительную сборку заголовков компиляторов плюс вы можете обернуть STL #includes
в pragmas
, чтобы отключить некоторые предупреждения (например, некоторые заголовки Boost будут вызывать предупреждения при компиляции на уровне 4).
Что вы предпочитаете использовать?
Спасибо за ответ и рекомендацию к книге. – Rob 2008-11-13 16:00:44