Hello everyone,

I am new to this forum. I have a sort of simple task to do with the C#, well it looks like it is not so simple. I have to create my own CLinearList that has only CNodeLong and CNodeString elements in it. I thought I could solve this like it is writtens down below but the code does not work, it compiles, it runs but nothing is written in console.
I use Microsoft Visual Studio.
I think I am lost because i don't know what else can I do with the code.
If anyone can help me, I would appriciate it


CODE:
--------------------------------------------------------------------------------------------
Code:
using System;
using System.Collections.Generic;


namespace Naloga2
{
    class CNode
    {
        private CNode next;

        public CNode getNext()
        {
            return next;
        }
        public void setNext(CNode input)
        {
            next = input;
        }

        public CNode()
        {
            next = null;
        }

        public virtual void Print()
        {

        }
    }
    

    class CNodeLong : CNode
    {
        private long vrednost;

        public long getVrednost()
        {
            return vrednost;
        }
        public void setVrednost(long input)
        {
            vrednost = input;
        }

        public CNodeLong()
        {

        }

        public CNodeLong(long val)
        {
            vrednost = val;
        }

        new public virtual void Print()
        {
            Console.WriteLine(vrednost);
        }
    }

    
    unsafe class CNodeString : CNode
    {
        private char* vrednost;

        public char* getVrednost()
        {
            return vrednost;
        }
        public void setVrednost(char* input)
        {
            if (vrednost != null)
            {
                vrednost = null;
            }
            vrednost = input;
        }

        public CNodeString()
        {
        }

        public CNodeString(char* val)
        {
            vrednost = val;
        }

        public virtual void print()
        {
            Console.WriteLine(*vrednost);
        }
    }




    class CLinearList
    {
        private CNode FirstElement;
        private CNode endElement;
        private CNode tmp;

        public void Add(CNodeLong input)
        {
            tmp = new CNodeLong();
            tmp = input;
            endElement.setNext(tmp);
            endElement = endElement.getNext();
            tmp = null;
        }

        public void Add(CNodeString input)
        {
            tmp = new CNodeString();
            tmp = input;
            endElement.setNext(tmp);
            endElement = endElement.getNext();
            tmp = null;
        }

        public CNode Get()
        {
            if (tmp != null)
                tmp = null;
            tmp = FirstElement;
            FirstElement = FirstElement.getNext();
            tmp.setNext(null);
            return tmp;
        }

        public void Print()
        {
            tmp = FirstElement;
            while (tmp != null)
            {
                tmp.Print();
                tmp = tmp.getNext();
            }
            tmp = null;
        }

        public CLinearList()
        {
            FirstElement = new CNode();
            endElement = new CNode();
            tmp = null;
        }

        public CLinearList(CNode input)
        {
            FirstElement = new CNode();
            FirstElement = input;
            tmp = null;
        }




            
        unsafe public static void Main(String[] args)
        {
            CLinearList seznam = new CLinearList();
            seznam.Add(new CNodeLong(1234));
            seznam.Add(new CNodeLong(53425));
            seznam.Add(new CNodeLong(666));

            seznam.Print();
            seznam.Get();
            seznam.Print();

            //Console.WriteLine("Ole");

        }

    }

}

Last edited by shabbir; 8Mar2011 at 18:06.. Reason: Code blocks