У меня есть это:
struct myClass{
multiset<string,binPred<string> > values ;
myClass(const char param1, const char param2) : values(less<string>())
{ }
} ;
Мне нужно инициализировать элемент values
другим функтором в зависимости от значений param1
и param2
. К сожалению, логика, чтобы решить, какой функтор использовать, не так проста, и как только values
создан, я не могу изменить связанный с ним функтор сравнения.
Итак ... Мне нужно было бы поместить всю эту логику принятия решений в часть инициализации члена, но я не знаю, как обойтись, используя оператор ?:
.
Можно ли поставить более сложные утверждения там ?? (например switch
staments)
Если нет, есть ли способ отложить построение values
, чтобы я мог инициализировать его в теле конструктора ??
Спасибо.