expect
/actual
机制概述:expect
:定义在共享代码模块中,表示某个功能或类需要在每个平台上有不同的实现。actual
:在具体平台的代码模块中实现 expect
声明的内容。每个平台需要提供它自己的 actual
实现。有点像接口和实现的关系
// 在共享模块中,定义一个 expect 函数
expect fun getPlatformName(): String
// Android 平台的实际实现
actual fun getPlatformName(): String {
return "Android"
}
// iOS 平台的实际实现
actual fun getPlatformName(): String {
return "iOS"
}
expect
是声明,它定义了需要被实现的 API,而具体实现则由 actual
提供。expect
和 actual
不仅可以用于函数,还可以用于类、属性等。actual
实现。