I am getting LNK1120 error, and I am not sure why. I am trying to use a template for int and double, that returns the corresponding type.
This is my Numerical_Analysis_Functions.cpp file
#include "Numerical_Analysis_Functions.h"
#include <iostream>
using namespace std;
template double
midpointRule<double>(double arr[], int);
template <typename T> double midpointRule(double arr[], int size)
{
return 1.0;
}
This is my Numerical_Analysis_Functions.h file
#pragma once
template <typename T>
extern T midpointRule(T arr[], int size);
This is my main
#include <iostream>
#include "Numerical_Analysis_Functions.h"
using namespace std;
int main()
{
double arr[4] = { 1, 2, 3, 4 };
midpointRule(arr, 4);
cin.sync();
cout << "End of Program.";
cin.get();
return 0;
}