Re: [問題] 請問一個class蠢問題中的蠢問題 Orz

看板Flash作者 (我是沒牌的營養師!)時間18年前 (2007/08/12 00:14), 編輯推噓3(304)
留言7則, 3人參與, 最新討論串2/2 (看更多)
※ 引述《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

08/12 00:17, , 1F
Orz 原來是少了 = new Test(1,2); 建構子我有寫XD
08/12 00:17, 1F

08/12 00:18, , 2F
那麼想再請問一下 如果希望Test類別的.m和.n
08/12 00:18, 2F

08/12 00:18, , 3F
跟另外一個同為Test類別的物件相加 operator overflow
08/12 00:18, 3F

08/12 00:18, , 4F
(overloading)該怎麼宣告呢 @@" 謝謝 m(__ __)m
08/12 00:18, 4F

08/12 01:03, , 5F
抱歉,看不太懂,不太了解意思 :)
08/12 01:03, 5F

08/12 01:39, , 6F
AS2.0好像沒有operator overloading的功能喔
08/12 01:39, 6F

08/12 01:40, , 7F
要自己寫一個接受兩個class的參數(左右operad)的函式
08/12 01:40, 7F
文章代碼(AID): #16lU1iJ9 (Flash)
文章代碼(AID): #16lU1iJ9 (Flash)