Re[14]: Бинарная склейка
От: Qbit86 Кипр
Дата: 24.01.17 09:37
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Именно это позволяет бороться с распуханием кода после применения шаблонов.


И насколько успешно позволяет?

Например, начнём с такой единицы трансляции, состоящей только из подключения заголовочных файлов:
#include <array>
#include <cstdint>


Потом постепенно добавляем explicit instance'ы каких-нибудь шаблонных классов, и компилируем:
#include <array>
#include <cstdint>

template class std::array<std::uint8_t, 5>;


#include <array>
#include <cstdint>

template class std::array<std::uint8_t, 5>;
template class std::array<double, 7>;


#include <array>
#include <cstdint>

template class std::array<std::uint8_t, 5>;
template class std::array<double, 7>;
template class std::array<std::array<double, 7>, 11>;


Какой тут будет выигрыш от указанной оптимизации, и как его задетектить?
Глаза у меня добрые, но рубашка — смирительная!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.