matlabcoder 生成的C++程序修改

使用matlab coder生成了C++程序,想要将程序生成dll文件进行调用,但是在添加.h和.cpp文件时出现了如下错误:

img

试过引用各种命名空间都没有办法解决,请问大噶有没有什么解决办法?
其中一个文件的代码如下:
//
// File: rt_nonfinite.h
//
// MATLAB Coder version : 5.1
// C/C++ source code generated on : 16-Apr-2022 16:07:30
//

#ifndef RT_NONFINITE_H

#define RT_NONFINITE_H

// Include Files
#include "rtwtypes.h"

#ifdef __cplusplus

extern "C" {

#endif

extern real_T rtInf;
extern real_T rtMinusInf;
extern real_T rtNaN;
extern real32_T rtInfF;
extern real32_T rtMinusInfF;
extern real32_T rtNaNF;
extern boolean_T rtIsInf(real_T value);
extern boolean_T rtIsInfF(real32_T value);
extern boolean_T rtIsNaN(real_T value);
extern boolean_T rtIsNaNF(real32_T value);

#ifdef __cplusplus

}
#endif
#endif

//
// File trailer for rt_nonfinite.h
//
// [EOF]
//

报错原因是头文件声明了某函数,但缺少函数的定义,在后面调用的时候就会报错
解决方法是把MATLAB coder生成的.c文件全部导入VS的项目中,成功解决

预编译的头文件
在 Visual Studio 中创建新项目时,名为pch.h的预编译头文件将添加到项目中。(在 Visual Studio 2017 及更早版本中,该文件称为stdafx.h。)该文件的目的是加快构建过程。任何稳定的头文件,例如标准库头文件,如,都应该包含在此处。预编译的头文件只有在它或它包含的任何文件被修改时才会被编译。如果您只对项目源代码进行更改,则构建将跳过对预编译头文件的编译。

预编译头文件的编译器选项是/Y。在项目属性页中,选项位于Configuration Properties > C/C++ > Precompiled Headers 下。您可以选择不使用预编译头文件,并且可以指定头文件名以及输出文件的名称和路径。

自定义预编译代码