Следующий код работает, но я бы хотел избежать предупреждения:
предупреждение: 'fitness :: vect_' следует инициализировать в списке инициализации членов [-Weffc ++]
когда он скомпилирован с переключателем g++ -Weffc++
:
#include <array>
template<class T, unsigned N>
class fitness
{
public:
explicit fitness(T v)
{
static_assert(N, "fitness zero length");
vect_.fill(v);
}
private:
std::array<T, N> vect_;
};
int main()
{
fitness<double, 4> f(-1000.0);
return 0;
}
Следует игнорировать предупреждение? Есть ли способ заполнить vect_
в списке инициализации конструктора (без изменения его типа)?
vect_()
илиvect_{}
. - person juanchopanza   schedule 24.02.2014