пятница, 3 декабря 2010 г.

Undefined reference to... и шаблоны в c++

Шаблон задает не саму функцию, а только... шаблон о том, как ее создать при необходимости. Соответственно самой функции как таковой не создается. И если реализацию вынести в другой файл(например объявление в .h, а реализация в .cc) то появится ошибка Undefined reference to... связанная с этим шаблоном. Можно либо перенести объявление и реализацию в  1 файл(ну, или вообще совместить), или  использовать export, хотя в интернетах это почему-то не рекомендуют.
С шаблонами классов все аналогично.

Комментариев нет:

Отправить комментарий