Скажите, пожалуйста,
STL состоит только из заголовочных файлов?
Почти все библиотеки Boost тоже состоит только из заголовочных файлов?
Т.е. эти библиотеки не требуется собирать в бинарники для использования?
Здравствуйте, Максим Рогожин, Вы писали:
МР>STL состоит только из заголовочных файлов?
нет, многое находится в стандартной библиотеке, которая поставляется разработчиком компилятора
МР>Почти все библиотеки Boost тоже состоит только из заголовочных файлов?
почти, но не все
Re[2]: STL и Boost состоят только из заголовочных файлов?
Здравствуйте, Анатолий Широков, Вы писали:
АШ>нет, многое находится в стандартной библиотеке, которая поставляется разработчиком компилятора
А что, например, там находится? Вроде бы все в заголовочных файлах содержится.
МР>>Почти все библиотеки Boost тоже состоит только из заголовочных файлов? АШ>почти, но не все
А можете, подсказать, что примерно и по каким причинам содержится в бинарниках, а не в заголовочных файлах?
Re[3]: STL и Boost состоят только из заголовочных файлов?
Нет на оба вопроса. Хотя это и деталь реализации, STL как правило, содержит компилированные файлы. В частности, стримы.
Boost содержит очень много компилируемых файлов. Как правило, наличие компилированной части указывается в документации к под-библиотеке.
Да здравствует мыло душистое и веревка пушистая.
Re[3]: STL и Boost состоят только из заголовочных файлов?
Здравствуйте, Максим Рогожин, Вы писали:
МР>Привет!
МР>Скажите, пожалуйста, МР>STL состоит только из заголовочных файлов?
Нет, многое таки идёт библиотекой.
МР>Почти все библиотеки Boost тоже состоит только из заголовочных файлов?
"Почти" — наверно, да. Но вот поиск по apt-cache search boost показывает, что как минимум program_options, date_time, random, regex, system, thread, atomic, chrono, context, coroutine, (надоело грепать и копипастить) имеют отдельные библиотеки для линковки.
МР>Т.е. эти библиотеки не требуется собирать в бинарники для использования?
Требуется.
Но для STL библиотека обычно присутствует при дефолтном вызове линкера.
The God is real, unless declared integer.
Re[2]: STL и Boost состоят только из заголовочных файлов?
Здравствуйте, Vamp, Вы писали:
V>Хотя это и деталь реализации, STL как правило, содержит компилированные файлы. В частности, стримы.
Тут вопрос терминологии. STL != стандартная библиотека c++. Под STL часто подразумевают только вклад Степанова в стандартную библиотеку. Строки и потоки как бы сбоку немного.
Re[4]: STL и Boost состоят только из заголовочных файлов?
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>dumpbin msvcrt.dll /EXPORTS
msvcrt.dll это C run-time library
при чём тут STL и C++? Тот факт, что многие имплементации в заголовках используют функции из C run-time library к вопросу не относится.
Здравствуйте, Caracrist, Вы писали:
C>Здравствуйте, Pavel Dvorkin, Вы писали:
PD>>dumpbin msvcrt.dll /EXPORTS
C>msvcrt.dll это C run-time library C>при чём тут STL и C++? Тот факт, что многие имплементации в заголовках используют функции из C run-time library к вопросу не относится.
Существуют два лагеря. Одни считают до сих пор, что STL — это часть стандартной библиотеки C++, другие думают, что STL является предтечей стандартной библиотеки C++ до ее стандартизации. Ты, судя по высказыванию относишься к первому лагерю, я — ко второму.
Re[6]: STL и Boost состоят только из заголовочных файлов?
Здравствуйте, Анатолий Широков, Вы писали:
АШ>Существуют два лагеря. Одни считают до сих пор, что STL — это часть стандартной библиотеки C++, другие думают, что STL является предтечей стандартной библиотеки C++ до ее стандартизации. Ты, судя по высказыванию относишься к первому лагерю, я — ко второму.
STL — Standard Template Library
Так что, до тех пор пока темплейты не экспортятся она, по определению, будет в заголовках
Здравствуйте, Caracrist, Вы писали:
C>Здравствуйте, Анатолий Широков, Вы писали:
АШ>>Существуют два лагеря. Одни считают до сих пор, что STL — это часть стандартной библиотеки C++, другие думают, что STL является предтечей стандартной библиотеки C++ до ее стандартизации. Ты, судя по высказыванию относишься к первому лагерю, я — ко второму.
C>STL — Standard Template Library C>Так что, до тех пор пока темплейты не экспортятся она, по определению, будет в заголовках
Извини, в стандарте C++ нет такого определения. Есть стандартная библиотека С++.