go swig exceptions 示例代码显示如何使用SWIG将抛出异常的C++库移植到返回错误的库中
使用SWIG将C++库移植到Go例外此代码旨在作为如何移植抛出异常的C++库的示例。所有抛出异常的方法都包含在try/catch块中,这些块将异常转换为恐慌,然后恢复以返回go错误。描述DemoLib C++类有两种方法( DivideBy和NegativeThrows ),它们在某些输入上抛出异常,还有一种方法( NeverThrows )永远不会抛出异常。 DemoLib::DemoLib () {}o double DemoLib::DivideBy ( int n) { if (n == 0 ) { throw std::invalid_argument ( " Cannot divide by zero " ); } return 1.0 / n; } int DemoLib
下载地址
用户评论