Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa klasom C#

[es] :: .NET :: Problem sa klasom C#

[ Pregleda: 1799 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

bciric
Bojan Ciric
Pirot

Član broj: 89846
Poruke: 207
77.46.248.*

Sajt: www.cirasoft.co.cc


Profil

icon Problem sa klasom C#03.06.2008. u 19:56 - pre 192 meseci
Imam ovakav problem sa klasom:

Pokusavam da napravim red cekanja sa LIFO baferom koriscenjem dvostruko ulancane liste

Code:
class BufferNode
    {
        public Package info;
        public BufferNode next, prev;


        public BufferNode(Package el)
        {
            info = el;
            next = null;
            prev = null;
        }
    }


    class Buffer
    {
        BufferNode head = new BufferNode();
        BufferNode tail = new BufferNode();
        //double intime, outtime, timeinbuffer, numpacket;

        public Buffer()
        {
            head = tail = null;
        }
        /// <summary>
        /// Vreme ulaska u bafer
        /// </summary>
        /// <param name="it">vrednost vremena</param>
        public void SetInTime(double it)
        {
            
        }


        /// <summary>
        /// Proverava da li je bafer prazan i vraca bool vrednost
        /// </summary>
        /// <returns></returns>
        public bool isEmpty()
        {
            return head == null;
        }
        /// <summary>
        /// Nalazi i vraca duzinu bafera
        /// </summary>
        /// <returns>Duzina bafera</returns>
        public int BufferLength()
        {
            int length = 0;
            BufferNode tmp = new BufferNode();
            
            for (tmp = head; tmp != null; tmp = tmp.next)
            {
                length++;
            }
            return length;
        }
        /// <summary>
        /// Dodavanje novog paketa u bafer
        /// </summary>
        /// <param name="x">Cvor bafera koji se dodaje</param>
        public void AddToBuffer(BufferNode x)
        {
            if (!isEmpty())
            {

                /*x.prev = tail;
                x.next = null;
                tail.next.prev = x;
                tail.next = x;
                */
                tail.next = x;
                x.prev = tail;
                x.next = null;
                tail = x;


            }
            else
                head = tail = x;
        }

        /// <summary>
        /// Brisanje Paketa sa repa bafera
        /// </summary>
        public void DeleteFromTail()
        {
            if (!isEmpty())
            {
                if (head == tail)
                    head = tail = null;
                else
                {
                    tail = tail.prev;
                    tail.next = null;
                }
            }
            else
                return;
        }
        /// <summary>
        /// Uzima elemenat koji treba proslediti programu
        /// </summary>
        /// <returns></returns>
        public BufferNode TakeFromBuffer()
        {
            BufferNode x=new BufferNode();
            x = tail;
            DeleteFromTail();
            return x;


        }
    }




Da li moze to da radi bez onog default konstruktora BufferNode() ?

Ja kad pokusam da kreiram instancu te kalse javlja mi gresku "Error 5 No overload for method 'BufferNode' takes '0' arguments"


Koja je fora? I koja je razlika ako ubacim i onaj konstruktor?
 
Odgovor na temu

bags

Član broj: 10072
Poruke: 715
*.12.15.tuwien.teleweb.at.



+2 Profil

icon Re: Problem sa klasom C#03.06.2008. u 21:51 - pre 192 meseci
Pa u klasi bufferNode imas samo konstruktor koji kao argument prima Package e1.Koliko vidim ti ga ne koristis ,pa ga mozes i izbrisati.Ili kad pozivas konstruktor da predas taj package.

PS.
Cool slika u profilu. :)
Free advice is seldom cheap.
 
Odgovor na temu

bciric
Bojan Ciric
Pirot

Član broj: 89846
Poruke: 207
77.46.248.*

Sajt: www.cirasoft.co.cc


Profil

icon Re: Problem sa klasom C#03.06.2008. u 21:58 - pre 192 meseci
ma ok je to koristim dalje u programu,

program pukne kod :
BufferNode head = new BufferNode();


trazi i default konstruktor sto je bas bezveze
 
Odgovor na temu

sallle
Sasa Ninkovic
GTECH
Beograd

Član broj: 146
Poruke: 480
*.adsl.beotel.net.

ICQ: 20785904


+4 Profil

icon Re: Problem sa klasom C#04.06.2008. u 01:41 - pre 192 meseci
ukoliko ne definises nikakav konstruktor u kodu, postojace default konstruktor bez parametara.
Cim definises neki konstruktor, gubi se podrazumevani konstruktor bez parametara (moras rucno da ga definises)
 
Odgovor na temu

bciric
Bojan Ciric
Pirot

Član broj: 89846
Poruke: 207
77.46.248.*

Sajt: www.cirasoft.co.cc


Profil

icon Re: Problem sa klasom C#04.06.2008. u 11:26 - pre 192 meseci
e to mi je trebalo, hvala ti

 
Odgovor na temu

[es] :: .NET :: Problem sa klasom C#

[ Pregleda: 1799 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.