Хочется сделать одну шаблонную функцию (header.h), которая реализована
различными способами в source1.cpp или source2.cpp.
В зависимости от моего выбора, программа будет собираться с первым или со вторым.
И все это потом вызывать в mainsource.cpp.
//header.h
template <typename T>
void swap(size_t n, T* x, T* y);
//source1.cpp
template <typename T>
void swap(size_t n, T* x, T* y){
...
}
//source2.cpp
template <typename T>
void swap(size_t n, T* x, T* y){
...
}
//mainsource.cpp
int main() {
swap(...);
return 0;
}
Реализуема ли такая конструкция?