首页 > 解决方案 > cast(T)x 和 to!T(x) 的区别

问题描述

D 编程语言cast(T)x和有什么区别?to!T(x)(前提是模块std.conv已导入)

标签: castingtype-conversiond

解决方案


cast(T)x执行语言保证的几种类型的转换。这些包括:

  • 运行时提供的类/接口类型之间的动态转换
  • 数字类型转换,例如 double 到 short
  • 数组类型转换,例如 int[] 到 ubyte[]
  • 强制alias this转换,否则不会强制转换
  • 仅类型系统转换,尤其是围绕constshared

to!T(x)进行许多其他转换,最显着的是与字符串之间的转换。


推荐阅读