csl950212
2017-03-13 08:20 阅读 1.3k

请教一下,c#对象引用释放问题

2

请问一下,在c#里,如果方法中的参数为对象,然后引用了外部的对象,再被方法内的对象集合添加了,这个集合是这个方法所在的类的静态集合,那这个对象还是存在在堆中,只有这个集合移除了这个对象,然后这个对象才在程序运行时真正释放掉么?这个又是静态集合,静态集合只能在程序结束才能被销毁,那这个对象能完全释放要么从这个静态集合中移除要么整个程序结束,这样理解对不?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

  • caozhy 从今以后生命中的每一秒都属于我爱的人 2017-03-13 16:06

    所有的对象(class)都肯定是在堆上的。只有局部变量的值类型(简单类型,比如int,或者structs,enum等)在堆栈上。

    点赞 评论 复制链接分享

相关推荐