Thread View: alt.pl.programy.flash-5
3 messages
3 total messages
Started by MANi
Mon, 05 Mar 2007 23:33
[AS|2.0] Proste klasy .. czemu?
Author: MANi
Date: Mon, 05 Mar 2007 23:33
Date: Mon, 05 Mar 2007 23:33
73 lines
2226 bytes
2226 bytes
Witam Serdecznie!
Napisalem 2 proste klasy, ktore znajduja sie ponizej, ale podczas
kompilacji wyskakuje taki error:
------------------
A class's instance variables may only be initialized to compile-time
constant expressions.
public var weapon:Item = new Item();
------------------
Potrafie sie pozbyc tego bledu w momencie, gdy nie uzyje konstruktora:
------------------
public var weapon:Item;
------------------
Czy ktos potrafi mi wytlumaczyc dlaczego tak sie dzieje? Co
zmodyfikowac, aby jednak moc korzystac z konstruktora "Item()"?
### AS|2.0
Item.as
---------
class Item {
private var _itemName:String = null;
function Item() {
this._itemName = "---";
}
public function get itemName():String {
return this._itemName;
}
public function set itemName(s_itemName:String):Void {
this._itemName = s_itemName;
}
}
Set.as
---------
import Item;
class Set {
public var weapon:Item = new Item();
private var _gName:String = null;
function Set(s_gName:String) {
this._gName = s_gName;
}
public function get gName():String {
return this._gName;
}
public function set gName(s_gName:String):Void {
this._gName = s_gName;
}
}
Main.fla
---------
import Item;
import Set;
var mySet:Set = new Set("qwerty");
mySet.weapon.itemName = "kosa";
trace(mySet.weapon.itemName);
--
Pozdrawiam, MANi aka Vagabundo
______________________________
G G :::::::: 0 x 3 6 A 0 0 D
Re: [AS|2.0] Proste klasy .. czemu?
Author: Devoth
Date: Tue, 06 Mar 2007 02:10
Date: Tue, 06 Mar 2007 02:10
33 lines
1869 bytes
1869 bytes
MANi napisał(a): > Witam Serdecznie! > > Napisalem 2 proste klasy, ktore znajduja sie ponizej, ale podczas > kompilacji wyskakuje taki error: > ------------------ > A class's instance variables may only be initialized to compile-time > constant expressions. > > public var weapon:Item = new Item(); > ------------------ > > Potrafie sie pozbyc tego bledu w momencie, gdy nie uzyje konstruktora: > ------------------ > public var weapon:Item; > ------------------ > > Czy ktos potrafi mi wytlumaczyc dlaczego tak sie dzieje? Co > zmodyfikowac, aby jednak moc korzystac z konstruktora "Item()"? [ciach] Bo definiować jako zmienne klasowe można tylko stałe, ew typ i zasięg jeszcze. O ile się nie mylę to przypisanie (utworzenie nowego obiektu Item) wykonuj w konstruktorze klasy Set. Wcześniej możesz tylko zdefiniować jego typ. -- pozdrawiam Devoth Questions? - Do not hesitate to ask! www.devoth.pl
Re: [AS|2.0] Proste klasy .. czemu?
Author: MANi
Date: Tue, 06 Mar 2007 08:07
Date: Tue, 06 Mar 2007 08:07
37 lines
1982 bytes
1982 bytes
Dnia 2007-03-06 03:10, Devoth tak oto nawymyślał(a): > MANi napisał(a): >> Witam Serdecznie! >> >> Napisalem 2 proste klasy, ktore znajduja sie ponizej, ale podczas >> kompilacji wyskakuje taki error: >> ------------------ >> A class's instance variables may only be initialized to compile-time >> constant expressions. >> >> public var weapon:Item = new Item(); >> ------------------ >> >> Potrafie sie pozbyc tego bledu w momencie, gdy nie uzyje konstruktora: >> ------------------ >> public var weapon:Item; >> ------------------ >> >> Czy ktos potrafi mi wytlumaczyc dlaczego tak sie dzieje? Co >> zmodyfikowac, aby jednak moc korzystac z konstruktora "Item()"? > [ciach] > > Bo definiować jako zmienne klasowe można tylko stałe, ew typ i zasięg > jeszcze. > > O ile się nie mylę to przypisanie (utworzenie nowego obiektu Item) > wykonuj w konstruktorze klasy Set. Wcześniej możesz tylko zdefiniować > jego typ. > Bardzo dziekuje za szybka i skuteczna pomoc :) -- Pozdrawiam, MANi aka Vagabundo ______________________________ G G :::::::: 0 x 3 6 A 0 0 D
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads