Diskuze: Problém s class

C# .NET .NET (C# a Visual Basic) Problém s class American English version English version

Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Daniel Vítek:

Ahojte,mám tento kód:

Console.WriteLine("Jak se máš ?");
            string Nalada;
            Nalada = Console.ReadLine();
            if (Nalada == "Dobře")
                Console.WriteLine("Fákt ? Já se mám taky dobře !");
            else
                if (Nalada == "dobře")
                    Console.WriteLine("Fákt ? Já se mám taky dobře !");
                else
                {
                    Nahodnanalada nalady = new Nahodnanalada();
                    Nahodnanalada.nalady();
                }

a Nahodnanalada.cs

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

namespace Brepta
{
    class Nahodnanalada
    {
        public void nalady()
        {
            string[] nalady = {
                "Super !!",
                "Nic moc :(",
                "Ale jó,jde to.."
                 };
            Random cnalady = new Random();
            Console.WriteLine(nalady[cnalady.Next(nalady.Length)]);
            cnalady.Next(nalady.Length);
        }
    }
}

a píše mi to tohle :

Error 1 An object reference is required for the non-static field, method, or property 'Brepta.Nahod­nanalada.nala­dy()' G:\BirdSoft\Ga­mes\brepta\Brep­ta C#\Brepta\Brep­ta\Brepta.cs 33 21 Brepta

Co si tím ?

 
Odpovědět 1.6.2012 13:21
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Daniel Vítek
David Čápka:

Ahoj, chválím, že si hraješ s objekty :)

Chyba je nahoře na 12. řádku, voláš nalady() na třídě, místo na instanci, má tam být

nalady.nalady();

Metodu voláš na konkrétní instanci, ne na celé třídě. Metody mohou být i statické na třídě, ale to asi není to, co teď chceš :)

Nahoru Odpovědět 1.6.2012 13:25
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na David Čápka
Daniel Vítek:

A1´6 v3astněěě toho sem si nevším :D

 
Nahoru Odpovědět 1.6.2012 13:30
Avatar
smile
Neregistrovaný
Avatar
Odpovídá na Daniel Vítek
smile:

nevím proč, ale nikde tam nevidím hlavní metodu main a v té chybě tam je: non-static field, method

 
Nahoru Odpovědět 1.6.2012 19:38
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na smile
David Čápka:

Již jsem mu odpověděl, main tam není, protože neposílá celý kód (logicky), ale jen tu část, která mu nefunguje. A chyba mluví jasně, snažil se volat nestatickou metodu na třídě.

Nahoru Odpovědět 1.6.2012 21:49
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na David Čápka
Daniel Vítek:

btw. Omlouvám se za předchozí příspěvek...num lock na notebooku :D

 
Nahoru Odpovědět 2.6.2012 8:16
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Daniel Vítek
David Čápka:

Se mi taky stává, numlock na notebooku je zlo :D

Nahoru Odpovědět 2.6.2012 8:22
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.