一、跨平台类
1. 集合类
Array
List
Hash
IntHash
2. Std
static function int( x : Float ) : Int
static function is( v : Dynamic, t : Dynamic ) : Bool
static function parseFloat( x : String ) : Float
static function parseInt( x : String ) : Null<Int>
static function random( x : Int ) : Int
static function string( s : Dynamic ) : String
3. haxe包,大部分类跨平台
remoting包:某些平台下无法使用:比如嵌入网页的Flash,无法创建TCP服务
rtti包:Run Time Type Information,相当于反射
http包:用于创建HTTP请求,并获取相应,某些平台无法使用,比如Neko
4. EReg类:Regular expressions,正则表达式
5. Xml类:用于解析、创建XML文件
二、平台独立类
1. js包:只包含一些表示DOM的typedef
2. flash包:分2个版本flash8以下和flash9
3. neko包
4. php包
5. cpp包
三、条件编译
1. #if、#else、#elseif、#end
2. 通过命令行-D参数定义flag
3. 预定义的不同平台的flag:js、flash、neko、php、cpp
四、remap开关
myPack.Lib.println("Hello remapping!");
编译选项加入--remap myPack:neko,这样所有用到myPack的地方都被换成neko,虽然这样很便于编写跨平台代码,但这样就无法使用平台特有的功能
五、用条件编译和import实现跨平台
#if php import php.Lib; #elseif neko import neko.Lib; #end