gpt4 book ai didi

c++ - 如何从 C 代码调用 C++ 函数

转载 作者:搜寻专家 更新时间:2023-10-31 01:01:11 25 4
gpt4 key购买 nike

我有一个 C++ 类及其 header CFileMapping.cpp 和 CFileMapping.h 我想在我的 C 代码中调用 C++ 函数 CFileMapping::getInstance().writeMemory( )

即使我包装我的 C++ 代码并添加

#ifdef __cplusplus
extern "C"

在头文件中处理c++代码并添加
外部“C”在cpp文件中,我仍然不能这样调用我的函数

CFileMapping::getInstance().writeMemory(). 

谁能帮帮我?我想保留我的 C++ 代码并能够在需要时调用它。

最佳答案

您应该为您的 C++ 调用创建 C 包装器:

extern "C" 
{
void WriteMemFile()
{
CFileMapping::getInstance().writeMemory( );
}
}

// The C interface
void WriteMemFile();

重要提示:extern "C" 指定该函数使用 C 命名约定。

关于c++ - 如何从 C 代码调用 C++ 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29628597/

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