Хорошо, переменные-члены могут использоватьсядля инициализации других переменных-членов в списке инициализации (с учетом порядка инициализации и т.д.). Как насчет функций-членов? Чтобы быть конкретным, является ли этот фрагмент допустимым в соответствии со стандартом C++?
struct foo{
foo(const size_t N) : N_(N), arr_(fill_arr(N)) {
//arr_ = fill_arr(N); // or should I fall back to this one?
}
std::vector fill_arr(const size_t N){
std::vector arr(N);
// fill in the vector somehow
return arr;
}
size_t N_;
std::vector arr_;
// other stuff
};