【发布时间】:2021-02-17 15:16:53
【问题描述】:
我需要做以下事情:
std::vector<std::string> A;
std::vector<std::string> B;
==> pointer_to_vector<std::string> ptr;
//Some Code
ptr = A; //ptr points to object A
//Some More Code
ptr = B; // //ptr points to object B
在程序中,ptr需要在不同的时间同时引用A和B。考虑到std::vector 进行重新分配,如何实现它,这里如何使用智能指针?
【问题讨论】:
-
std::vector<std::string>*? -
"这里如何使用智能指针?"为什么这里需要一个智能指针?
-
这里不需要智能指针,一个普通的原始指针就足够了。
-
智能指针管理ownership。在自动变量的情况下,所有权已经被管理。当变量超出范围时,它会被处理。
标签: c++ pointers smart-pointers stdvector