我正在尝试编写一个封闭源C ++库的python包装器,它具有如下界面:
class Image
{
public:
:
static Image ReadImage(const char *Filename);
:
}
问题是,对于python绑定,我需要一个指向Image
对象的指针,而不是对象Image
本身。如果方法是构造函数,我会这样做:
Image img = new Image();
但我坚持认为静态方法是否有相应的语法。我尝试了以下哪些不起作用(至少不是在g ++ 4.8中):
image img = new Image::ReadImage("foo.bar");
当然我可以通过生成一个包装类来解决这个问题,但我想知道这是否真的有必要?
答案 0 :(得分:2)
您可能需要依赖copy-ctor或move-ctor:
Image* img = new Image(Image::ReadImage("foo.bar"));