Я работаю с шаблонами на C++ и хочу знать, как правильно (значение) инициализировать нестатические элементы данных в шаблоне класса. Например, рассмотрим следующий фрагмент:
Код: Выделить всё
template
class MyVector
{
T x; // x has undefined value for a built in type
};
Теперь я знаю, что элемент данных x имеет
мусорное значение для встроенных типов в локальной/блочной области, если он не инициализирован явно.
Поэтому я хочу инициализировать элемент данных. Если я изменю приведенный выше код на:
Код: Выделить всё
template
class MyVector
{
T x(); // now x becomes a member function
};
Как видно из приведенного выше измененного фрагмента кода, x теперь является функцией-членом. Как я могу
инициализировать значение элемента данных x для типа T?
Подробнее здесь:
https://stackoverflow.com/questions/703 ... a-class-te