看板 Flash 關於我們 聯絡資訊
※ 引述《fridayjason (I'm not Beloved)》之銘言: : 可能是今天寫了一整天 開始腦殘了 Orz : 我原本是想測試一下flash中對class運算子的支援性 : 所以先寫了一個class當測試用 程式碼如下: : //[於_root的圖層1寫] : var xx:Test; : var yy:Test; : xx.Test(1,2); : yy.Test(4,8); : trace(xx.m); : //[於Test.as中寫] : class Test{ : var n:Number; : var m:Number; : public function Test(x:Number,y:Number){ : n=x; m=y;}; : }; : 結果trace的輸出結果是"undefined" : 可以幫忙看一下是哪裡的蠢問題嗎 謝謝 Orz 你沒把Test類別實體化呀 :) 而且利用建構子就可以把資料傳進去了 //Test.as class Test { var n:Number; var m:Number; function Test(x:Number,y:Number) { n=x; m=y; } } //Demo.fla stop(); var xx:Test = new Test(1,2); //實體化,並給予參數 var yy:Test = new Test(4,8); //實體化,並給予參數 trace(xx.m); //得到2 當然,物件若不經由類別實體化 透過靜態方法(static method)也是可以直接使用裡面的方法 例如Math類別,可以直接的使用Math.abs(); 供你參考 :) PS:上面為AS2的寫法,AS3會有些不同 -- http://www.eddie.com.tw/blog/ http://www.eddie.com.tw/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.135.172.127
fridayjason:Orz 原來是少了 = new Test(1,2); 建構子我有寫XD 08/12 00:17
fridayjason:那麼想再請問一下 如果希望Test類別的.m和.n 08/12 00:18
fridayjason:跟另外一個同為Test類別的物件相加 operator overflow 08/12 00:18
fridayjason:(overloading)該怎麼宣告呢 @@" 謝謝 m(__ __)m 08/12 00:18
aquarianboy:抱歉,看不太懂,不太了解意思 :) 08/12 01:03
cjcat2266:AS2.0好像沒有operator overloading的功能喔 08/12 01:39
cjcat2266:要自己寫一個接受兩個class的參數(左右operad)的函式 08/12 01:40