Const和ReadOnly的区别是什么?

2023-05-29 0 811

面向对象中,自变量是指在流程中一般来说维持不变的值。C#词汇提供更多三种自变量类型:const和readonly。尽管两者促进作用相近,但在这类各方面又存有许多差别。

Const和ReadOnly的区别是什么?

具体来说,const表头根本无法在该表头的新闻稿中调用,而readonly表头能在新闻稿或缺省中调用。因而,在采用完全相同的缺省调用时,readonly表头可能将具备完全相同的值,而const表头则仍旧具备完全相同的值。

其二,const表头是校对时物理量,换句话说,在校对前夕就早已确认了它的值,因而,它根本无法包涵直链类型(如int, double等)或隐式类型的物理量。而readonly表头可用作运转时物理量,这意味著它是在运转时确认的,因此能包涵任何人类型的物理量,主要包括提及类型。

Const和ReadOnly的区别是什么?

最终,const对提及类型的物理量,可能将的值根本无法是string和null,而readonly能是任何人类型。这原因在于在C#中,数组自变量是提及类型,所以它在校对前夕被增设为原初字符串,因而根本无法被增设为string类型,而readonly则能被增设为任何人提及类型。

除以内以下几点以外,除了两个须要特别注意的是,const表头能用作switch句子中的自变量函数,而readonly则无法。即使readonly表头的值在运转时就可以确认,而switch句子须要在校对前夕确认自变量函数的值。

Const和ReadOnly的区别是什么?

综上所述,const和readonly尽管都是自变量,但它在采用中有许多明显的差别。const适用作在校对前夕就已知的自变量,而readonly则适用作在运转时就可以确认的自变量。此外,由于const表头根本无法包涵直链类型或隐式类型的物理量,因而在这类情况下根本无法采用readonly表头。

举报/反馈

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务