mag*_*nus 0 c++ windows delphi
鉴于对相关问题(/sf/answers/1546047471/)的以下答案是在以Windows为目标的Delphi应用程序中计算的对象引用?
即:
Q1A在第二个语句后执行以下对象的引用计数为2?
o1 := TMyObject.Create;
o2 := o1;
Run Code Online (Sandbox Code Playgroud)
Q1B从上面继,将分配o1
到nil
的引用计数下降到1?
o1 := nil;
Run Code Online (Sandbox Code Playgroud)
Q1C后再次上,将分配o2
到nil
的引用计数下降到0?
o2 := nil;
Run Code Online (Sandbox Code Playgroud)
Q1D向前移动,如果以上是正确的并且对象现在的引用计数为0,我理解编译器不会自动释放对象(o2.Free
应该在o2 := nil
上面调用之前为了防止内存泄漏).请记住,我说的是Windows目标,而不是具有自动引用计数(ARC)的移动目标.
Q1E如果引用计数没有自动释放与对象关联的内存,那么Delphi中的引用计数究竟是什么(例如,它是否有助于跟踪内存泄漏)?
归档时间: |
|
查看次数: |
251 次 |
最近记录: |