虽然说irrlicht可以方便的用来支持uicode
) E$ w3 q7 F/ ` Y. d! ~( ]( F2 s4 B0 F8 Y; x+ m D9 g7 D Y0 [; {
来个一个典型的例子,它自己定义的“c8” 数据类型,这其实是一个ansi的八位char数据。' X6 g0 M- A- e2 `+ b9 n
用winapi来获取系统路径的时候,一般是用GetWindowsDirectory2 K2 t. j4 G p* A0 U% X* j
在编译器使用uicode来编译的时候,GetWindowsDirectory这个函数实际是调用GetWindowsDirectoryW来工作的,返回的路径是一个uicode的数据。
! I6 {+ I1 ^* Z1 ~/ e7 u# T9 P同样在ansi编译的时候,GetWindowsDirectory实际是调用GetWindowsDirectoryA来实现的。返回的是ansi数据。5 ^# t3 ~# d. I3 j, y' E" j8 t
所以,用c8有时候可能会出现无法转换数据类型的错误。另外不只是c8,另外两个s8、u8同样也是如此。+ {6 G ^4 M7 l3 S2 R
所以我认为,irrlicht的内核其实是ansi的。因为根本没有设计哪怕是一个uicode的数据类型。也好在引擎内部工作并不需要要到太多次的char数据类型。只是偶尔遇上一两次,确实挺麻烦的。
irrlicht中的数据类型
最新推荐文章于 2022-02-25 19:38:17 发布