Предположим, что я хочу что-то испытывать с vector<int>
, vector<bool>
, vector<string>
. Я хочу написать примерно так:Зацикливание по типам
for(type T in {int, bool, string}){
vector<T> v;
for(int i = 0; i < 3; ++i){
v.push_back(randomValue<T>());
}
assert(v.size() == 3);
}
Я знаю, что на этом языке нет такой функции, но можно ли как-то подражать? Есть ли этот функционал в некоторой библиотеке, например boost
?
BOOST.MPL абсолютно для меня достаточно, но 1 проблема, которая может быть интересной: она не работает (http://liveworkspace.org/code/2TZHbN$4), не имеющая стандартных конструкций (если я тестирую это правильно) – RiaD
В таком случае быстрое решение - это просто [использовать указатели] (http://liveworkspace.org/code/sChpB$0) –
Означает ли это, что вызываются конструкторы векторных элементов? @EvgenyPanasyuk: Ваша ссылка не работает для меня. Я полагаю, вы говорите об одной и той же проблеме и предлагаете звонить с типами указателей вместо этого? – Syncopated