【发布时间】:2019-09-20 18:52:02
【问题描述】:
我有以下代码,但它报告error: invalid initialization of non-const reference of type 'char*&' from an rvalue of type 'std::unique_ptr<char []>::pointer {aka char*}'。我想知道我是否可以通过这种方式在函数中为 unique_ptr 缓冲分配。
#include <iostream>
#include <string>
#include <memory>
void buffer_test(char* &buffer){
buffer = new char[100];
}
int main()
{
std::unique_ptr<char []> buffer{};
buffer_test(buffer.get());
std::cout << buffer[0] << std::endl;
std::cout << "finish";
}
【问题讨论】:
-
制作别名指针有什么意义?
标签: c++ reference c++14 unique-ptr