Catch2可以和C语言一起使用吗



我正在编写一个dll,它支持与C和C++语言应用程序接口。dll本身是用C++编写的,所以问题是我可以使用Catch2框架对C和C++应用程序进行单元测试吗?

我需要注意什么?还有其他人可以提出的替代方案吗?

测试必须用C++编写。

要测试一个函数,你只需要能够调用它;可以从C++调用C函数吗&";。

在大多数情况下,答案是肯定的。有一个";语言链接";功能。在C不兼容的情况下也有一些例外,例如名称为C++关键字的函数,如delete。要调用这样的函数,您需要用C编写一个具有兼容名称的包装器函数,并从用C++编写的测试中调用该包装器。

最新更新