重生北京上大学开网吧做网站的小说,建程网官网平台,开发一个小程序大约需要多少钱,安仁网站制作做接口只用C#xff0c;千万别要C。C是编译器敏感的#xff0c;一旦导出的接口里有 std::string这些东西#xff0c;以及类#xff0c;注定了要为各个编译器的各个版本准备独立的库。
刚好我有一些资料#xff0c;是我根据网友给的问题精心整理了一份「C的资料从专业入门…做接口只用C千万别要C。C是编译器敏感的一旦导出的接口里有 std::string这些东西以及类注定了要为各个编译器的各个版本准备独立的库。
刚好我有一些资料是我根据网友给的问题精心整理了一份「C的资料从专业入门到高级教程」
点个关注在评论区回复“888”之后私信回复“888”全部无偿共享给大家 一般来说只要接口如DLL导出的函数是C的那在同一个OS下的几乎所有语言都可以调用这个库。因此很多现代的软件库哪怕自己是用了一堆C甚至boost开发的都要额外的提供C语言的接口。
C如何变成C的接口最简单的就是句柄化。用void *替代对象的指针而后用C语言封装所有的接口。要使用一个C对象就先create handle内部调用new class返回void *。而后把class的所有方法都变成 class_callXXX(handle,...)的形式把this指针通过handle传进去。当然这些函数可以设置为友元会方便很多。当然用完后再销毁句柄。
至于COM、CORBA之类的抽象OO都太复杂了。C的接口还是返璞归真。典型的比如 libuhd、 librdkafka等库都是这样做的。