CPP/Templates/FunctionTemplateExplicitInstantiation
From ProgrammingExamples
FunctionTemplateExplicitInstantiation.cpp
#include <iostream> #include "Point.h" int main(int, char*[]) { PrintSomething(1.2); // Sometimes have to do this: PrintSomething<double>(1.2); return 0; }
Point.h
template<typename T> void PrintSomething(T something);
Point.cpp
#include "Point.h" #include <iostream> template<typename T> void PrintSomething(T something) { std::cout << something << std::endl; } template void PrintSomething<double>(double);
CMakeLists.txt
cmake_minimum_required(VERSION 2.6) Project(FunctionTemplateExplicitInstantiation) ADD_EXECUTABLE(FunctionTemplateExplicitInstantiation FunctionTemplateExplicitInstantiation.cpp Point.cpp)