-1
我是新來提高Python和我期待揭露一類,看起來像這樣含有構造函數的嵌套私有類的構造函數:揭露一類使用Boost Python的
///Header File structure
class A
{ public:
A();
~A();
void B();
private:
class Impl;
std::unique_ptr Impl impl_;
};
///Class Implementation
class A::Impl
{
public:
void C();
}
A::A():impl_(new Impl)
{
}
A::~A()
{
}
void A::B()
{
void C();
}
可有人建議如何,因爲我一直在嘗試,目前的方法給出了錯誤,因爲默認地將Impl是私有的,也是一個訪問已刪除的功能錯誤做到這一點:
BOOST_PYTHON_MODULE(libA)
{
class_<A::Impl>("Impl")
.def("C", &A::Impl::C)
class_<A>("A",init<std::unique_ptr>)
.def("B", &A::B)
}
謝謝。這很好,就像我這樣的新用戶一樣,noncopyable關鍵字在boost命名空間中。 –
@arunabhsharma'noncopyable'是* class *,不是關鍵字。 – Barry