» »

[c#] Ustvarjanje objekta v drugem razredu

[c#] Ustvarjanje objekta v drugem razredu

Cvenemir ::

Lp.

Imam razred Program, kjer ustvarim objekt uporabnik iz razreda Uporabnik. Ker bi rad ta objekt (uporabnik) dodal na seznam v razredu SeznamUporabnikov, me zanima, kako ga naj kličem v tem razredu.

Poskusil sem takole, a mi podčrta besedo Program, ter napiše: The type or namespace name 'Program' could not be found

LinkedList<SeznamOseb> uporabniki = new LinkedList<SeznamOseb>();

        public void dodajUporabnika(Program uporabnik)
        {
            if (uporabnik != null)
            {
                uporabniki.AddLast(uporabnik);
            }
        }

darkolord ::

Še ostalo pokaži, definicije razredov.

Cvenemir ::

class SeznamOseb
    {
        LinkedList<SeznamOseb> uporabniki = new LinkedList<SeznamOseb>();
        
        public void dodajUporabnika(Program uporabnik)
        {
            if (uporabnik != null)
            {
                uporabniki.AddLast(uporabnik);
            }
        }
    }


Glavni program:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace NP_vaja2
{
    class Program
    {
        //Metoda ustvari nov par
        public static StanjePara UstvariPar()
        {
            StanjePara par = new StanjePara();

            Console.WriteLine("\nVnesi podatke o paru: ");
            Console.WriteLine("******************************");
            Console.WriteLine("Vnesi priimek para:");
            par.Priimek = Console.ReadLine();
            Console.WriteLine("Vnesi čas trajanja zveze para: ");
            par.TrajanjeZveze = Console.ReadLine();
            Console.WriteLine("Vnesi stanje para: ");
            par.Status = Console.ReadLine();
            return par;
        }

        //Metoda ustvari novega uporabnika
        public static Uporabnik UstvariUporabnika()
        {
            Uporabnik uporabnik = new Uporabnik();

            Console.WriteLine("\nVnesi podatke o uporabniku: ");
            Console.WriteLine("******************************");
            Console.WriteLine("Vnesi ime uporabnika: ");
            uporabnik.Ime = Console.ReadLine();
            Console.WriteLine("Vnesi priimek uporabnika: ");
            uporabnik.Priimek = Console.ReadLine();
            Console.WriteLine("Vnesi naslov bivanja uporabnika: ");
            uporabnik.Naslov = Console.ReadLine();
            Console.WriteLine("Vnesi spol uporabnika: ");
            uporabnik.Spol = Console.ReadLine();
            Console.WriteLine("Vnesi rojstni datum uporabnika: ");
            uporabnik.DatumRojstva = Console.ReadLine();
            Console.WriteLine("Vnesi hobije uporabnika: ");
            uporabnik.Hobiji = Console.ReadLine();
            Console.WriteLine("Vnesi  interesna področja uporabnika: ");
            uporabnik.InteresnaPodrocja = Console.ReadLine();
            Console.WriteLine("Vnesi status uporabnika (kadilec/nekadilec): ");
            uporabnik.Status = Console.ReadLine();
            return uporabnik;
        }

        //Metoda ustvari rednega člana
        public static RedniClan UstvariRednegaClana()
        {
            RedniClan redniClan = new RedniClan();

            Console.WriteLine("\nVnesi podatke o uporabniku: ");
            Console.WriteLine("******************************");
            Console.WriteLine("Vnesi ime rednega člana: ");
            redniClan.Ime = Console.ReadLine();
            Console.WriteLine("Vnesi priimek rednega člana: ");
            redniClan.Priimek = Console.ReadLine();
            Console.WriteLine("Vnesi naslov bivanja rednega člana: ");
            redniClan.Naslov = Console.ReadLine();
            Console.WriteLine("Vnesi spol rednega člana: ");
            redniClan.Spol = Console.ReadLine();
            Console.WriteLine("Vnesi rojstni datum rednega člana: ");
            redniClan.DatumRojstva = Console.ReadLine();
            Console.WriteLine("Vnesi število zvezdic rednega člana: ");
            redniClan.StZvezdic = int.Parse(Console.ReadLine());
            return redniClan;
        }

        //Metoda ustvari izlet
        public static Izlet UstvariIzlet()
        {
            Izlet izlet = new Izlet();

            Console.WriteLine("\nVnesi podatke o aktivnosti: ");
            Console.WriteLine("******************************");
            Console.WriteLine("Določite vrsto aktivnosti: ");
            izlet.VrstaAktivnosti = Console.ReadLine();
            Console.WriteLine("Vnesite naslov izleta: ");
            izlet.NaslovIzleta = Console.ReadLine();
            Console.WriteLine("Vnesite kraj dogajanja: ");
            izlet.KrajDogajanja = Console.ReadLine();
            Console.WriteLine("Vnesite čas trajanja izleta: ");
            izlet.CasDogajanja = Console.ReadLine();
            return izlet;
        }

        //Metoda ustvari prireditev
        public static Prireditev UstvariPrireditev()
        {
            Prireditev prireditev = new Prireditev();

            Console.WriteLine("\nVnesi podatke o aktivnosti: ");
            Console.WriteLine("******************************");
            Console.WriteLine("Določite vrsto aktivnosti: ");
            Console.WriteLine("Vnesite naslov prireditve: ");
            Console.WriteLine("Vnesite kraj prireditve: ");
            Console.WriteLine("Vnesite čas trajanja prireditve: ");
            return prireditev;
        }

        static void Main(string[] args)
        {
            //Ustvarimo objekte razredov
            Par p = new Par();
            Uporabnik u = new Uporabnik();
            RedniClan rc = new RedniClan();
            Izlet i = new Izlet();
            Prireditev pr = new Prireditev();

            string izbira;

            do
            {
                Console.Clear();
                Console.WriteLine("MENI:\n");
                Console.WriteLine("1.  Ustvari uporabnika:");
                Console.WriteLine("2.  Ustvari rednega člana:");
                Console.WriteLine("3.  Ustvari par:");
                Console.WriteLine("4.  Ustvari izlet:");
                Console.WriteLine("5.  Ustvari prireditev:\n");
                Console.WriteLine("6.  Izpiši uporabnika:");
                Console.WriteLine("7.  Izpiši rednega člana:");
                Console.WriteLine("8.  Izpiši par:");
                Console.WriteLine("9.  Izpiši izlet:");
                Console.WriteLine("10. Izpiši prireditev:\n\n");

                Console.Write("Vnesi izbiro: ");
                izbira = Console.ReadLine();

                switch (izbira)
                {
                    case "1":
                        u = UstvariUporabnika();
                        break;
                    case "2":
                        rc = UstvariRednegaClana();
                        break;
                    case "3":
                        p = UstvariPar();
                        break;
                    case "4":
                        i = UstvariIzlet();
                        break;
                    case "5":
                        pr = UstvariPrireditev();
                        break;
                    case "6":
                        u.IzpisUporabnika();
                        break;
                    case "7":
                        rc.IzpisRednegaClana();
                        break;
                    case "8":
                        p.IzpisPara();
                        break;
                    case "9":
                        i.IzpisIzleta();
                        break;
                    case "10":
                        pr.IzpisPrireditve();
                        break;
                }
                Console.ReadKey();

            } while (true);

            Console.ReadKey(true);
        }
    }
}




zenb ::

Namesto Program daj Uporabnik.

Zgodovina sprememb…

  • spremenil: zenb ()

Cvenemir ::

Nobenega razreda ne morem uporabit. Vedno podčrta besedo. Tudi za dedovanje ne morem uporabit nobenega od ostalih razredov. Ne vem, kak naj objekt iz razreda Program spravim sem -.-

Zgodovina sprememb…

  • spremenil: Cvenemir ()

darkolord ::

Kje imaš definiran razred Uporabnik?

Takole bi moralo biti:
class SeznamOseb
    {
        LinkedList<Uporabnik> uporabniki = new LinkedList<Uporabnik>();
         
        public void dodajUporabnika(Uporabnik uporabnik)
        {
            if (uporabnik != null)
            {
                uporabniki.AddLast(uporabnik);
            }
        }
    }

Cvenemir ::

Tudi tako sem že poskusil, pa podčrta vse 3 besede Uporabnik, češ da ne obstajajo.

Razred Uporabnik pa zgleda takole

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace NP_vaja2
{
    class Uporabnik : Oseba
    {
        private string status;
        private string hobiji;
        private string interesnaPodrocja;

        /// <summary>
        /// Uporabnik vnese status (kadilec, nekadilec),
        /// hobije in interesna področja
        /// </summary>
        /// <param name="status"></param>
        public Uporabnik(string status, string hobiji, string interesnaPodrocja)
            : base()
        {
            this.status = status;
            this.hobiji = hobiji;
            this.interesnaPodrocja = interesnaPodrocja;
        }

        public Uporabnik()
            : base()
        {
            this.status = "";
            this.hobiji = "";
            this.interesnaPodrocja = "";
        }

        public string Hobiji
        {
            get { return this.hobiji; }
            set { this.hobiji = value; }
        }

        public string Status
        {
            get { return this.status; }
            set { this.status = value; }
        }

        public string InteresnaPodrocja
        {
            get { return this.interesnaPodrocja; }
            set { this.interesnaPodrocja = value; }
        }

        /// <summary>
        /// Metoda izpiše podatke o uporabniku
        /// </summary>
        public void IzpisUporabnika()
        {
            //Izpis osebe in statusa
            IzpisOsebe();
            Console.WriteLine("Status: {0}", this.status);
            Console.WriteLine("Hobiji: {0}", this.hobiji);
            Console.WriteLine("Interesna področja: {0}", this.interesnaPodrocja);
            Console.WriteLine("\nZa vrnitev v meni pritisnite katerokoli tipko."); 
            Console.ReadLine();
        }
    }
}

darkolord ::

Razred SeznamOseb daj v isti namespace

Cvenemir ::

O najlepša hvala, sedaj deluje.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

c sharp LinkedList - Naloga

Oddelek: Programiranje
91846 (1797) Msatir
»

[C#] Kopiranje osebe iz seznama v drug seznam

Oddelek: Programiranje
51491 (1352) Presidente
»

[C#] Klicanje metod

Oddelek: Programiranje
141701 (1469) Cvenemir
»

[c#] Napačen izpis -- prazni stringi

Oddelek: Programiranje
51525 (1467) Spura
»

Naloga v C#

Oddelek: Programiranje
72609 (2109) Hardstyle

Več podobnih tem