作者PythonScript (Python)
看板C_and_CPP
标题[问题] 使用指标的时机
时间Thu Sep 12 23:32:58 2019
拍谢 真的是 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 吗?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.33.11.247 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1568302380.A.676.html
1F:→ firejox: keyword: unique_ptr, shared_ptr, weak_ptr 09/12 23:40
2F:→ firejox: 第一个问题则是需要OOP的概念 09/12 23:43
3F:→ loveme00835: 不要用指标, 结案 09/13 00:04
4F:→ alongalone: 跟物件相关的. 都不要用pointer... 09/13 00:52
5F:→ alongalone: 太多行为都违反直觉了. 小结: 你C++要在念熟一点 09/13 00:52
6F:推 kaneson: 简单说a放b里面就是要跟b同生共死,否则就最好分开来。从m 09/13 07:45
7F:→ kaneson: ain为底做好物件生死分层规划就不会有这麽麻烦的问题 09/13 07:45