hi~
最近学了C++的smart pointer
学习内容为:
C++ primer 5th, chapter 12
版上的一部影片以及一些文章
有些疑问想跟大家请教与讨论!
(与C++交往不够深,有蠢问题的话请见谅> <)
1.
既然我们有smart pointer可以用
那还会有什么情况
是"一定必须"要使用built-in pointer的呢?
我指的是一般应用程式开发,而不是到语言很底层的地方
因为我想smart pointer这个物件里应该也是使用built-in poiner对吧?
以现代C++使用者的角度来看
是否应尽量避免使用built-in pointer?
2.
对于unique_ptr的使用时机超级不了解!!
这到底应该什么时候使用呀??
3.
chapter 12.2是在讲dynamic array
有提到说,我们应该尽量使用library container
尽量不要dynamic allocate array
但他是说"大部份的应用"
有什么情况是使用dynamic allocate array会比较好的吗?
4.
使用shared_ptr来产生2维阵列的方式
我底下这样做可以顺利执行
但我不确定是不是 好/正确 的方法
比如说我要产生一个3*4的2维阵列:
auto p = make_shared<vector<vector<int>>>();
p->resize(3);
for(auto &x : *p)
x.resize(4);
问题很多> <
谢谢大家!!