Re: Polje klase
Izgleda da me nisi razumeo, ali hvala na pomoci u svakom slucaju :).
Nije u pitanju greska koja se javlja pri proveri deklaracije metode, vec pri
proveri koriscenja identifikatora.
Kada proveravam da li identifikator, koji se koristi u metodi, postoji (da
li je deklarisan), javlja mi se greska ako je taj id polje te iste klase
koje se deklarise iza te metode.
Npr.
struct A {
...
int get() { return a; }
...
var int a;
...
}
U metodi get() se prijavljuje greska da ne postoji simbol a, jer on stvarno
i ne postoji u tom trenutku u tabeli simbola, ali bi postojao kada bi se
deklaracija var int a stavila ispred metode. Ovaj problem me zanima i kako
ga tretirati?
Hvala na pomoci.
2006/6/7, Nikola Kartelija <kartel@ptt.yu>:
Nije u pitanju greska koja se javlja pri proveri deklaracije metode, vec pri
proveri koriscenja identifikatora.
Kada proveravam da li identifikator, koji se koristi u metodi, postoji (da
li je deklarisan), javlja mi se greska ako je taj id polje te iste klase
koje se deklarise iza te metode.
Npr.
struct A {
...
int get() { return a; }
...
var int a;
...
}
U metodi get() se prijavljuje greska da ne postoji simbol a, jer on stvarno
i ne postoji u tom trenutku u tabeli simbola, ali bi postojao kada bi se
deklaracija var int a stavila ispred metode. Ovaj problem me zanima i kako
ga tretirati?
Hvala na pomoci.
2006/6/7, Nikola Kartelija <kartel@ptt.yu>:
Mislim da nesto gresis u proveri formalnih parametara (pretpostavljam da
tit u javlja gresku). Nisu ti potrebna polja klase da bi proverio ispravnost
deklaracije metode. Treba samo da proveris da li ti je u toj klasi vec
definisana metoda sa istim imenom I istim tipovima parametara. Ako je
definisana u super klasi, nema veze, jer ce se razlikovati po prvom
parametru, za koji moras da obezbedis da se zove "this" I bude tipa trenutne
klase. Parametri se deklarisu odvojeno od ostalih promenljivih, na sta te
navodi I forma var:(tip).
Pozdrav
------------------------------
*From:* Rade Jakovljević [mailto:radegm@gmail.com]
*Sent:* Tuesday, June 06, 2006 9:44 PM
*To:* ri4pp@rti.etf.bg.ac.yu
*Subject:* [ri4pp] Polje klase
Da li u specifikaciji nase mikrojave stoji da u klasi moraju biti
definisana prvo polja pa tek onda metode koje koriste ta polja.
Problem je sto ako se polje definise iza metode, pri obradi te metode se
polje jos uvek ne nalazi u tabeli simbola, pa se prijavljuje semanticka
greska.
Da li se sme podrazumevati da je potrebno da deklaracije polja budu ispred
deklaracija metoda u telu klase?
P.S.: Sad razumem zasto u Pascalu i C-u moramo da definisemo promenljive
na pocetku bloka. :).
Pozdrav
-----------------------------------------------------------------
unsubscribe:
minimalist@rti.etf.bg.ac.yu?subject=unsubscribe%20ri4pp
-----------------------------------------------------------------
- References:
- Polje klase
- From: "Rade Jakovljević" <radegm@gmail.com>
- RE: Polje klase
- From: "Nikola Kartelija" <kartel@ptt.yu>
- Polje klase
Previous by date: RE: Polje klase
Next by date: RE: Polje klase
Previous by thread: RE: Polje klase Next by thread: RE: Polje klase
Previous by thread: RE: Polje klase Next by thread: RE: Polje klase