gpt4 book ai didi

c# - c# 中真的需要构造函数或析构函数吗?

转载 作者:太空狗 更新时间:2023-10-30 00:05:49 24 4
gpt4 key购买 nike

你能告诉我在 c# 中是否需要构造函数,其中属性可用于设置默认值?

同样,在垃圾回收语言中是否需要析构函数?

请给我一些实际的例子。

最佳答案

构造函数对于初始化不可变数据至关重要。他们还帮助声明 IoC/DI 期望/要求。对于配置对象的必需数据集最少的场景,尽早要求它是有用的 - 这通常意味着构造函数。

析构函数/终结器通常用于释放非托管 资源——例如操作系统句柄或非托管区域的内存 (Marshal.AllocHGlobal)。这些资源不会被垃圾收集,因此必须小心手动释放它们 - 否则会发生泄漏,或者您会使有限的资源池饱和。这样的示例在应用程序代码中很少见,并且几乎总是用作 IDisposable 之外的后备 - 当它没有被正确处理时。

关于c# - c# 中真的需要构造函数或析构函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7860172/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com