LNK2019:未解析的外部符号 - 没有模板类

时间:2014-04-16 07:41:43

标签: c++ visual-studio visual-studio-2013 linker-errors

获得此错误,看起来这些错误对于实例而言是相当独特的,并且所有问题似乎都是参考模板,而事实并非如此。

所以我得到的是:

  

错误5错误LNK2019:未解析的外部符号“public:class Vec3 *       __thiscall Patch :: bezCurveInterp(class Curve,float)“(?       bezCurveInterp @ Patch @@ QAEPAVVec3 @@ VCurve @@ M @ Z)在函数“public:class Vec3 *”中引用       __thiscall Patch :: bezPatchInterp(float,float)“(?bezPatchInterp @ Patch @@ QAEPAVVec3 @@ MM @ Z)       C:\ Users \ Sara \ Documents \ Sp14 \ 184 \ Bezeir \ Project1 \ Bezier.obj Project1

所提到的函数在bezier.cpp中定义:

#include "Bezier.h"

Vec3* bezCurveInterp(Curve c, float u) {
    Vec3* res = new Vec3[2];
    return res;
}

在bezier.h中我(除其他外):

#ifndef BEZIER_H
#define BEZIER_H
#include "Primitives.h"

class Patch {
public:
    Vec3* bezCurveInterp(Curve, float);

Vec3在“Primitives.h”中定义:

#ifndef PRIMITIVES_H
#define PRIMITIVES_H

using namespace std;
// A class for representing Vec3s

class Vec3 {
public:
    Vec3(); //among other things
 };

在“Primitives.cpp”中:

#include "Primitives.h"

Vec3::Vec3() {
    x = 0;
    y = 0;
    z = 0;
}

有什么突出的吗?感谢帮助c ++ / visual studio变成了一场噩梦..........

1 个答案:

答案 0 :(得分:0)

你缺少来自bezCurveInterp的Patch ::

Vec3* Patch::bezCurveInterp(Curve c, float u)