• Welcome to TUKE FÓRUM - Fórum pre študentov Technickej Univerzity v Košiciach.
 

Objektove programovanie

Started by markus, 21.02.2009, 23:57:40

« predchdzajce - alie »

drtic

Quote from: Patto on  18.04.2009, 18:50:33
pretoze chces ziskat clensku premennu, ktora nie je viditelna, a nie property Row a Col

namiesto tile.row a tile.col daj: tile.Row a tile.Col

Ja to mam naopak Row,Col su members a row,col properties.

Quote
a inac to sa nahodou netyka dotNetu? :)

Hej je to z 15puzzle.

Patto

#376
Viem, ze je to z DotNetu, pretoze tiez ho mam a nPuzzle mi funguje paradne

aha tak to si mal hned povedat, ze to davas naopak sveta, ako sa to nezvykne davat :D

ale inac ved uz v stiahnutom zaciatocnom subore bola abstraktna trieda Tile definovana tak, ze Row a Col su properties a cleny su automaticky vygenerovane takto:


public abstract class Tile
    {
        /// <summary>
        /// Tile's row index
        /// </summary>
        public int Row { get; set; }

        /// <summary>
        /// Tile's column index
        /// </summary>
        public int Col { get; set; }
    }

Cize toto si menil? Ak hej, tak neviem neaco.
Tak potom niekde inde musis mat chybu - v priradeni hodnoty, alebo inu ... ale to tazko zistit len podla toho co si tu dal.

drtic

#377
Uz som to dal naspat cize teraz mam aj ja row,col members a Row,Col properties.

Tu su obe MoveTile metody, v prvej to este funguje ale v druhej uz nie.


public bool MoveTile(int row, int col)
{
    if (row >= 0 && row < RowCount && col >= 0 && col < ColumnCount)
    {
        Console.WriteLine(Tiles[row][col].Row);  //Vypise napr. 1
        Console.WriteLine(Tiles[row][col].Col);  //Vypise napr. 2
        return MoveTile(Tiles[row][col]);
    }
    return false;
}

public bool MoveTile(Tile tile)
{
    int row = tile.Row;
    int col = tile.Col;
    Console.WriteLine(row); //Vypise 0
    Console.WriteLine(col); //Vypise 0
    .
    .
    .

Agamemnon

z tohto to vyzerá, že by to mohlo fungovať, ale sa to nedá určiť presne, lebo toto je príliš málo kódu a hlavne nie tá úplne podstatná časť... nejaké priradenia máš? ako to máš inicializované? ako to používaš? ako to máš implementované?

plus - skús použiť debugger
All code is crap.

42

Mao

Pozor, ak mas pouzite automaticke properties pre Row a Col , t.j. nieco take ako napisal Patto, tak k nim su automaticky vygenerovane prislusne clenske premenne, a tie sa nezhoduju s tvojimi clenskymi premennymi row a col.

Agamemnon

mao - ono tam je zvláštne to, že mu to raz ide a raz nejde - a je to v jednej sekvencii - v podstate len pár riadkov po sebe... aspoň z toho príkladu mi to tak vychádza...
All code is crap.

42

Mao

Tak chyba bude urcite inde, ako v tomto kusku kodu, kazdopadne debugger bude asi najlepsie riesenie, vloz si tam breakpointy ,krokuj si vykonavanie tej casti a sleduj ako sa menia hodnoty premennych.

Agamemnon

jj, súhlasím, že určite bude inde :) len je to zvláštne, ak mu to ide tak, ako je to popísané v tom jeho príspevku... hmm
All code is crap.

42

tuxik

Mam otazocku k UML vztah medzi Game a Room v hre je kompozicia alebo asociacia. Nemam v tom este uplne jasno kedy je to agregacia/kompozicia a kedy asociacia. Vdaka

drtic

#384
Quote from: drtic on  18.04.2009, 20:14:42
Uz som to dal naspat cize teraz mam aj ja row,col members a Row,Col properties.

Tu su obe MoveTile metody, v prvej to este funguje ale v druhej uz nie.


public bool MoveTile(int row, int col)
{
    if (row >= 0 && row < RowCount && col >= 0 && col < ColumnCount)
    {
        Console.WriteLine(Tiles[row][col].Row);  //Vypise napr. 1
        Console.WriteLine(Tiles[row][col].Col);  //Vypise napr. 2
        return MoveTile(Tiles[row][col]);
    }
    return false;
}

public bool MoveTile(Tile tile)
{
    int row = tile.Row;
    int col = tile.Col;
    Console.WriteLine(row); //Vypise 0
    Console.WriteLine(col); //Vypise 0
    .
    .
    .


Pravdepodobne trochu iny kod to bol aky som uviedol, lebo teraz ked som to zase skusal mi to uz neslo tak ako som to napisal.
Teraz mi vypisovalo 0 v oboch pripadoch.

Ale uz mi to ide, chyba bola v tom ze som tie clenske premenne nenastavil na ziadnu hodnotu, cize ich hodnota bola 0.

Patto

inac ti co nam minule v pondelok odpadlo cviko, tak teraz v pondelok budeme brat ten Backpack represantion, alebo nieco dalej, kedze tam dalsie cviko nie je ... clovek ani nevie potom, z coho bude bleskovka ... to je tiez pekny pristup od cviciacich ... nieze by nahodili vsetky cvika dopredu a clovek aspon moze sa pozriet, ze bude mat na cvikach aj do predu pripadne robit zadanie aj trosku dopredu a nie takyto pristup

Agamemnon

zadanie robiť môžeš kľudne... nikto ťa nedrží...
cviká nie sú dopredu urobené, tak ich ani nemôžeš mať nahodené dopredu... minulý rok neboli rovnaké cviká...
All code is crap.

42

Patto

#387
a zadanie nema byt robene podla tych intefejsov a predloh ako je ta vzorova hra?

ok ak nie su ako minuly rok alebo sa to nestiha, tak ok ... ja som len navrhoval, ze keby sa to dalo vsetko naraz a uz je potom pokoj :)

Agamemnon

keby bolo urobené, tak tam bude všetko naraz...

zadanie sa má robiť podľa toho, čo tam je napísané na tom webe... máš použiť tie interface-i (tú knižnicu) ale ak to budeš mať urobené inak, ako sa to robí na cvikách, tak to samozrejme nebude vadiť...
All code is crap.

42

mirek

Quote from: Agamemnon on  19.04.2009, 21:49:46
keby bolo urobené, tak tam bude všetko naraz...

zadanie sa má robiť podľa toho, čo tam je napísané na tom webe... máš použiť tie interface-i (tú knižnicu) ale ak to budeš mať urobené inak, ako sa to robí na cvikách, tak to samozrejme nebude vadiť...

to uz len zalezi od toho, ako to bude urobene inak... :-P lebo binas to nebars kupujuci...
So say we all!

Agamemnon

ak to bude splňať interface, tak imo kľudne aj inak... čo si spomínam, tam nikde v tých podmienkach nie je, že to musí byť presne tak, ako sa to robí na cvikách :P :D
All code is crap.

42

timwood

to rad pocujem take spravy ;)

Patto

a mozem aspon vediet, ze z coho zajtra rano budem mat bleskovku, kedze na nete este stale nic nie je???

feikar

nema tu niekto hotovu tu hru co sa robi na cvikach? ak ano mohol by ju niekde upnut, vdaka...  :thumbs-up:

mirek

Quote from: Agamemnon on  19.04.2009, 23:50:00
ak to bude splňať interface, tak imo kľudne aj inak... čo si spomínam, tam nikde v tých podmienkach nie je, že to musí byť presne tak, ako sa to robí na cvikách :P :D
je tam iba uvedene, ze zadanie musi pre svoju impelmentaciu pouzit totu kniznicu. podla cvik ale vyvoj ist nemusi...
So say we all!

mirek

Quote from: feikar on  20.04.2009, 01:37:14
nema tu niekto hotovu tu hru co sa robi na cvikach? ak ano mohol by ju niekde upnut, vdaka...  :thumbs-up:

a na co ti bude?
So say we all!

Agamemnon

Quote from: mirek on  20.04.2009, 02:01:04
Quote from: Agamemnon on  19.04.2009, 23:50:00
ak to bude splňať interface, tak imo kľudne aj inak... čo si spomínam, tam nikde v tých podmienkach nie je, že to musí byť presne tak, ako sa to robí na cvikách :P :D
je tam iba uvedene, ze zadanie musi pre svoju impelmentaciu pouzit totu kniznicu. podla cvik ale vyvoj ist nemusi...

no... však to isté som predtým napísal :)
All code is crap.

42

mirek

Quote from: Agamemnon on  20.04.2009, 02:10:35
Quote from: mirek on  20.04.2009, 02:01:04
Quote from: Agamemnon on  19.04.2009, 23:50:00
ak to bude splňať interface, tak imo kľudne aj inak... čo si spomínam, tam nikde v tých podmienkach nie je, že to musí byť presne tak, ako sa to robí na cvikách :P :D
je tam iba uvedene, ze zadanie musi pre svoju impelmentaciu pouzit totu kniznicu. podla cvik ale vyvoj ist nemusi...

no... však to isté som predtým napísal :)

tak to si potom dobre napisal
So say we all!

morrfun23

mimochodom co bude zajtra na cviceniach?

mirek

Quote from: morrfun23 on  20.04.2009, 05:11:01
mimochodom co bude zajtra na cviceniach?


no sak batoh - ten sme este nestihli spravit
So say we all!