为什么我收到链接器错误? (功能模板)

时间:2016-04-23 18:58:22

标签: c++ visual-studio templates instantiation

我收到LNK1120错误,我不知道为什么。我试图使用int和double的模板,返回相应的类型。

这是我的Numerical_Analysis_Functions.cpp文件

#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;
}

这是我的Numerical_Analysis_Functions.h文件

#pragma once

template <typename T>
extern T midpointRule(T arr[], int size);

这是我的主要

#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;
}

0 个答案:

没有答案