我参考了这个问题,我们能否创建一个指向没有默认构造函数的类的std::unique_ptr
数组?如何传递string
参数。
#include <iostream>
#include <string>
#include <memory>
using namespace std;
class A
{
string str;
public:
A() = delete;
A(string _str): str(_str) {}
string getStr()
{
return str;
}
};
int main()
{
unique_ptr<A[]> ptr = make_unique<A[]>(3);
unique_ptr<A[]> arr[3] = make_unique<A[]>(3);
// Do something here
return 0;
}
std::unique_ptr
数组,但你有一个指向数组的std::unique_ptr
*。 - Zereges