[问题] 使用指标的时机

楼主: PythonScript (Python)   2019-09-12 23:32:58
拍谢 真的是 C++ 新手 如果问了蠢问题请见谅
有翻过文章翻过书 但是还是不是很确定使用指标的时机
以我目前的理解 有错再请提点
有 classA, classB 与 classC
classB 会产生 classA 的物件, 然后存在 classB 的属性中
接着 classC 会去存取 classB, 也会使用 classB 中存 classA 的属性
如果在 classB 中 classA objectA;
未来某个时刻有可能会发生 classC 存取 classB 中存 classA 的属性时
该属性可能会消失或被取代
如果在 classB 中 classA* objectA = new objectA()
就不会有上述描述情况的发生
可以这样理解吗?
其次就是 如果有个变量 variableA
我有用指标变量 pointerA 指向 variableA
这样 variableA 应该是不会消失 直到我 delete 他
那如果有一系列的 variableA 变量指向它们
我把它们整理成一个 vectorB
vectorB = vector<pointerA>
如果怕 vectorB 弄丢 那需要再用一个 pointerB 指向 vectorB 吗?
谢谢
作者: firejox (Tangent)   2019-09-12 23:40:00
keyword: unique_ptr, shared_ptr, weak_ptr第一个问题则是需要OOP的概念
作者: loveme00835 (发箍)   2019-09-13 00:04:00
不要用指标, 结案
作者: alongalone (沿着孤单的路)   2019-09-13 00:52:00
跟物件相关的. 都不要用pointer...太多行为都违反直觉了. 小结: 你C++要在念熟一点
作者: kaneson (Lance)   2019-09-13 07:45:00
简单说a放b里面就是要跟b同生共死,否则就最好分开来。从main为底做好物件生死分层规划就不会有这么麻烦的问题

Links booklink

Contact Us: admin [ a t ] ucptt.com