скажем у меня есть несколько различных определений структуры (на самом деле, у меня есть Arround 50 таких определений):C++ создать continguous массив типа, который не известен на compiletime
struct Type1{
int i;
float f;
};
struct Type2{
bool b1;
bool b2;
double d;
};
все они POD, но может содержат совершенно разные данные.
сейчас, во время выполнения, я хочу решить, какой тип мне нужно, а затем создать массив (или вектор) этого выбранного типа, чтобы все данные были выложены в памяти.
Как бы я это сделал?
также - допустим, у меня есть целое число (оно содержит некоторые флаги), которое определяет, какие типы этих структур мне нужны. Есть ли способ, как я мог бы устроить typedefinitions этих структур в HashMap или так, например, что я могу сделать только что-то вроде:
vector<myTypeHashMap[flagsInt]> myVect;
?
Я знаю, что это происходит скорее с помощью метапрограммирования (о котором я не знаю), но, может быть, есть способ сделать это?
благодарит
благодарит
Похоже, вам понадобится шаблон фабричного дизайна. – Dmitry
Теперь, когда я думаю об этом, даже если вам удастся создать массив любого из этих типов, использование такого разнообразного зоопарка типа будет PITA. Нет ли способа упростить дизайн? – Dmitry
Наличие 50 несвязанных типов звучит как довольно сомнительный дизайн для меня. – 2010-01-06 13:43:17