隐性和显性这两个术语在您第一次听到时都会习惯一些。 当您在编程方面听到他们的声音时,这对您意味着什么呢? 一种方法比另一种更好吗? 在这里,我们将逐个讨论这些想法,并提供一些示例,这些示例可能会带来一些设计模式上的好处。
条款
在编程中,隐式常用于指代幕后其他代码为您完成的工作。 显式是通过明确编写要完成的指示来完成所需更改的手动方法。 在较小的图中,隐式和显式通常是用于将类型转换为所需类型的术语。 从更大的角度看,您可能正在谈论约定而不是配置,其中约定是代码库或框架为您隐式完成的工作,而配置只是显式设置。
根据所使用的编程语言以及该语言是静态类型还是动态类型 ,使用哪种方法的适当性或益处也有所不同。 它还取决于是否可以从运行时或编译期间推断事物。 由于这些因素,仅在狭窄的上下文中声明一种方法要优于另一种方法是正确的,因为您必须考虑所涉及的编程语言和程序的设计。
C语言中隐式和显式类型转换的示例如下:
- int implicit;
- implicit = 4.5;
-
- int explicit;
- explicit = (int)4.5;
在这里, implicit
和explicit
变量名被定义为int
类型。 一旦给定值4.5
,隐式版本将使编译器将通常为float或double类型的值转换为整数,而显式版本已使用(int)
强制将其转换为整数,从而强制转换了类型。