在调用TF lite的JPEG函数接口时,需要定义一个unique_ptr。在使用这个指针的过程中遇到了一些问题。
std::unique_ptr是C++11中增加的特性,用来独占所指向的对象,当unique_ptr被销毁时,它所指的对象也同时被销毁。std::unique_ptr不支持拷贝和复制。
unique_ptr<string> p1(new string ("abc"));
unique_ptr<string> p2(p1);//错误
unique_ptr<string> p3;
p3 = p2;//错误
对unique_ptr的操作可以通过以下方式:
修改器 | |
返回一个指向被管理对象的指针,并释放所有权 (公开成员函数) | |
替换被管理对象 (公开成员函数) | |
交换被管理对象 (公开成员函数) | |
观察器 | |
返回指向被管理对象的指针 (公开成员函数) | |
返回用于析构被管理对象的删除器 (公开成员函数) | |
检查是否有关联的被管理对象 (公开成员函数) |
std::unique_ptr<uint8_t[]> imgdata;
uint8_t* in = imgdata.get();