如何为 wchar_t 定义 swig typmap 以与 Perl 脚本绑定?

Posted

技术标签:

【中文标题】如何为 wchar_t 定义 swig typmap 以与 Perl 脚本绑定?【英文标题】:How to define swig typmap for wchar_t to bind with Perl scripts? 【发布时间】:2010-12-19 13:25:01 【问题描述】:

我正在使用SWIG 从 Perl 脚本中调用 C++ 函数。当我在 Perl 脚本中传递 char* 时没有问题,如下所示:

AddValue(char* val)

但我不能为wchar_t 写同样的内容,例如:

AddValue(wchar_t* val)

因为没有为此数据类型定义 SWIG 类型映射。 SWIG 提供了一个 perlstrings.swg 类型映射,它为 char* 进行转换。 wchar_t* 我需要类似的东西。非常欢迎任何帮助。

【问题讨论】:

【参考方案1】:

Python 的 wchar_t 实现存在于pywstrings.swg 中,并且只有 60 多行。鉴于此,perlstrings.swg 作为 Perl 代码示例和赏金,您可能会让某人为您移植它:)

【讨论】:

感谢您的评论。我知道 pywstrings.swg 和它 感谢您的评论。我知道 pywstrings.swg 很好。然而,那里使用的技术与 Perl 没有任何关系。这里的问题实际上是用 Perl 处理 unicode 数据,我需要帮助。

以上是关于如何为 wchar_t 定义 swig typmap 以与 Perl 脚本绑定?的主要内容,如果未能解决你的问题,请参考以下文章

SWIG:对 Java 的 wchar_t 支持

如何为双指针结构参数应用 SWIG 类型映射

如何为 C++、protobuf 制作 swig 接口文件

如何为 Python Swigged C++ 对象创建和分配回调函数

痛饮、python 和 wchar_t 问题

如何为类类型创建 OUTPUT 类型映射?