不,没有泄漏。
内存管理器将尝试就地扩展现有内存块。如果可以,则不会影响参考。但是,如果它不能,它会将数组复制到一个新的内存块。生成的接口引用将具有与复制之前相同的引用计数。增加数组的大小不会添加或删除现有数组元素的引用,只会将它们从一个内存位置移动到另一个内存位置。这非常安全。
接口和动态数组都是托管类型,编译器和RTL将正确管理它们。
如果我有一个引用计数接口的类型声明。
类型
ISomeInterface =接口
[ ‘{为xxxx-xxxx-XXX-XXXX-XXX}’]
程序doThing();
结束;
…