2010-06-11 4 views
1

Я написал код на C++, в котором я использовал Шаблоны. Поскольку я использовал шаблоны, я не мог инициализировать пару переменных класса шаблона. Я получил предупреждение от valgrind, говорящее Условный переход или перемещение зависит от неинициализированных значений. Итак, есть ли способ обойти это и/или инициализировать переменные шаблона? Я не мог придумать, как это сделать, потому что, даже если я инициализирую их как NULL, когда я использую строковый тип данных, возникает ошибка времени выполнения.Инициализация параметра шаблона

Спасибо!

+2

Вам нужно будет опубликовать минимальный фрагмент кода, желательно автономный и компиляционный (за исключением ошибки, которую вы видите), чтобы мы могли понять, что вы говорите о – sbi

ответ

4

Это всего лишь догадка о том, о чем вы просите, поэтому, пожалуйста, игнорируйте его, если это неправильно.

IIUC, ваша проблема заключается в том, что с параметрами шаблона вы не можете правильно по умолчанию инициализировать встроенные и пользовательские типы. Способ решения этой проблемы:

T obj = T(); 

Это работает как для встроенных, так и для UDT.

+0

спасибо за помощь sbi :) – Izza

Смежные вопросы