Явное генерация кода шаблона в объектном файле [Duplicate]C++

Программы на C++. Форум разработчиков
Anonymous
Явное генерация кода шаблона в объектном файле [Duplicate]

Сообщение Anonymous »

Если у меня есть функция шаблона в отдельном блоке компиляции (который создает объектный файл с суффиксом .o из Cuda C Compiler nvcc) < /p>

Допустим, у нас есть определение (реализация) < /p>

template
void foo(T a){
// something
}
< /code>

для создания явного кода в файле объекта, чтобы иметь возможность ссылаться на него из другого блока компиляции, мне необходимо ясно создать этот шаблон (для всех параметров шаблона, которые мне нужны) это: < /p>

template void foo(double a);
template void foo(double a);
< /code>

выполнение этого результата в фактическом коде в файле объекта. < /p>

Делать другое, например: < /p >

template void foo(double a);
template void foo(float a);
< /code>

не производит код в объектном файле, потому что это полное объявление шаблона шаблона < /strong>. Это правильно? < /P>

также < /p>

void foo(double a);
void foo(float a);
< /code>

Не производит код, потому что это было бы объявление о перегрузке < /strong>? Правильно ли это?

Подробнее здесь: https://stackoverflow.com/questions/238 ... bject-file

Вернуться в «C++»