用C++编写PostgreSQL函数

lil*_*lil 2 c++ postgresql

在遵循C:C语言函数指南的同时,我在使用C++编写postgres函数时遇到了一些问题.我发现大多数postgres函数都是用C语言编写的,而不是C++,但是我必须使用用C++编写的lib,所以我选择了C++.我的问题是,用C++编写时有什么需要注意的吗?使用pgxs编写makefile是很常见的,那么我应该如何编写makefile以使其工作?谢谢.

Cra*_*ger 5

如果你可以避免这样做,那就这样做.PostgreSQL与C++的搭配并不是特别好.正如PostGIS所示,这是可能的,但它并不过分有趣.

如果可以,可以为C++库编写或生成纯C包装器,并使用该包装器与库进行交互.如果它基于模板(例如:boost)或使用其他更高级的C++特性,那将是不切实际的,但如果它只是C-with-objects样式代码,则效果很好.SWIG可以帮助您生成包装器.

如果您更愿意避免使用包装器方法,或者如果您的库有点过于复杂,异常依赖等等,那么您应该阅读此PostgreSQL手册条目.

搜索PostgreSQL邮件列表以获取有关此主题的更多讨论.