Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > посчитать суммарный объем типов в mpl последовател |
Автор: boostcoder 2.11.2010, 22:59 | ||||
следующий код:
http://liveworkspace.org/code/9aace7d47c127da63966779c1d120cdc конкатенирует строки и создает последовательность типов. с этим все гуд. тип typesvec вывел для упрощения понимания. теперь, при попытке применить ко всем типам в последовательности оператор sizeof(), получаю 4. т.е. по все видимости, кол-во типов в контейнере. в чем затык? вот код:
http://liveworkspace.org/code/10849b82ecc54b1a63fe4f8a93c8fca8 спасибо. |
Автор: mes 2.11.2010, 23:30 |
нет, размер каждого типа равен 1, потому что нулю равен быть не может по стандарту... у вас не структура данных, а набор типов.. ![]() |
Автор: boostcoder 2.11.2010, 23:33 |
почему? у меня ведь нет таких типов в последовательности. это касательно заголовка пакета? если да - то я так и предполагал это сделать. а какие еще варианты? |
Автор: mes 2.11.2010, 23:37 |
sizeof (pair<char[10], int>) ==1 sizeof (pair<char[8], int>::first) ==8 ![]() Добавлено через 2 минуты и 46 секунд складывать по first`у |
Автор: boostcoder 2.11.2010, 23:42 | ||
я ведь работаю с typesvec. а это вектор типов, а не вектор пар, как types. в добавок, если записать такое:
то я получу 10. чему и равен sizeof(char[10]) Добавлено через 1 минуту и 18 секунд в typesvec и так все сложено по first`у |
Автор: mes 2.11.2010, 23:47 | ||
нда невнимательно посмотрел... только вверх и низ ![]() не надо было лишнее выкладывать ![]() Ловите:
http://liveworkspace.org/code/a94b55760e836c72303d528f32b76608 |
Автор: boostcoder 3.11.2010, 00:17 |
это же надо быть таким кривоглазым ![]() Добавлено через 33 секунды спасибо. вопрос закрыт. |