gpt4 book ai didi

c++ - VC++ Express 2008 中的错误 LNK2019 和 LNK2028

转载 作者:行者123 更新时间:2023-11-30 04:30:14 24 4
gpt4 key购买 nike

我正在尝试使用 2 个项目构建解决方案并收到以下错误消息:

ColliderTest.obj:错误 LNK2028:未定义的标记 (0A000080) “public: __thiscall Rect::Rect(int)” (??0Rect@@$$FQAE@XZ) 在函数“void __cdecl myFunction(void)”中引用(?myFunction@@$$FYAXXZ)

ColliderTest.obj:错误 LNK2019:未解析的外部符号“public:__thiscall Rect::Rect(int)”(??0Rect@@$$FQAE@XZ) 在函数“void __cdecl myFunction(void)”(?我的函数@@$$FYAXXZ)

代码:

  • 在“Collider”项目中,我有这些文件:

对撞机.h

#pragma once

class Rect{

int x;
int y;
unsigned int w;
unsigned int h;

public:
Rect(int x);
};

对撞机.cpp

#include "Collider.h"

Rect::Rect(int x){
this->x = x;
}
  • “ColliderTest”项目引用了 Collider 项目,此文件:

碰撞测试.cpp

#include "../app/Collider.h"

void myFunction();

void myFunction(){

Rect rect(4);
}

此外,每个项目都有一个带有空 main() 函数的 main.cpp 文件,以避免编译器对入口点的提示。

最佳答案

两个项目都有一个main函数?

这意味着您正在构建两个可执行文件。可执行文件通常不导出函数。

您需要一个可执行文件和一个类库 (dll)。

顺便说一句:如果你有一个空的 main 函数,你怎么知道你的程序是否运行了?

关于c++ - VC++ Express 2008 中的错误 LNK2019 和 LNK2028,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8842834/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com