Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

28.07.2015, 22:14

C# "zahl1" ist ein(e) "Variable", wird aber wie ein(e) "Methode" verwendet

Hallo

ich hab folgendes problem ich versuch gerade ein textbasiertes spiel zu programieren
auf Visual studio express 2013 aber ich bekomme die ganze zeit die gleiche fehlermeldung wie oben

das ist der code:

if (eingabe == zahl1 (Convert.ToInt32))

wieso kommt das die ganze zeit ?(

2

28.07.2015, 22:18

Weil die Klammer hinter Zahl1 dem Compiler sagt das es sich um eine Methode handelt!

Aber das ist ja nicht der Fall darum meckert er.

Convert.ToInt32(zahl1) <- so wird nen Schuh draus.
Wer aufhört besser werden zu wollen hört auf gut zu sein!

aktuelles Projekt:Rickety Racquet

3

28.07.2015, 23:30

Meinst du jetzt das ich die klammern bei convert wegmachen soll

if (eingabe == zahl1 Convert.ToInt32)

also dann so




sry falls das doof rüber kommt :(

NyNooNyrox

Frischling

Beiträge: 38

Wohnort: Gänserndorf

Beruf: Mechatroniker

  • Private Nachricht senden

4

28.07.2015, 23:57

Hallo,

Das was du machen möchtest wäre Folgendes:

1.) if (eingabe == Convert.ToInt32(zahl1))
2.) if(eingabe == (int)zahl1)


Mit freundlichen Grüßen

Meine Aussagen mögen Sarkasmus und andere nicht wirklich ernst zunehmende Dinge beinhalten.
Aus diesem Grund übernehme ich keine Haftung wenn der Elefant aus der Kühltruhe fliegt.

ERROR

Alter Hase

Beiträge: 417

Wohnort: Paderborn

Beruf: Informatik Student

  • Private Nachricht senden

5

29.07.2015, 00:29

Weisst du was eine Funktion/Methode ist?
Wenn nein: Grundlagen Buch holen und durcharbeiten ;)
Wenn ja: Eine Methode wird immer nach diesem Muster aufgerufen: NameDerMethode(Paramter) . Weil nach der Variable zahl1 direkt als nächstes Zeichen eine Klammer aufgeht, denkt der Compiler, dass du eine Methode aufrufen möchtest ABER er merkt auch, dass zahl1 eine Variable(hoffentlich nicht vom Typ int) ist. Daher die Meldung:"Ey, ich erkenne ein Muster für eine Methode, aber der Name führt mich zu einer Variable!". Du möchtest die ToInt32 Methode aufrufen und als Parameter zahl1 übergeben. Also so: Convert.ToInt32(zahl1) . Das Convert steht noch davor, da die Methode ToInt32 Teil der Klasse Convert ist.

m3xx

Alter Hase

Beiträge: 434

Beruf: Student

  • Private Nachricht senden

6

29.07.2015, 02:56

Weisst du was eine Funktion/Methode ist?
Wenn nein: Grundlagen Buch holen und durcharbeiten ;)
Wenn ja: Eine Methode wird immer nach diesem Muster aufgerufen: NameDerMethode(Paramter) . Weil nach der Variable zahl1 direkt als nächstes Zeichen eine Klammer aufgeht, denkt der Compiler, dass du eine Methode aufrufen möchtest ABER er merkt auch, dass zahl1 eine Variable(hoffentlich nicht vom Typ int) ist. Daher die Meldung:"Ey, ich erkenne ein Muster für eine Methode, aber der Name führt mich zu einer Variable!". Du möchtest die ToInt32 Methode aufrufen und als Parameter zahl1 übergeben. Also so: Convert.ToInt32(zahl1) . Das Convert steht noch davor, da die Methode ToInt32 Teil der Klasse Convert ist.

Also, wenn ich es nicht besser wüsste, weiß er es nicht. Zumindest sieht der Code so aus.

ERROR

Alter Hase

Beiträge: 417

Wohnort: Paderborn

Beruf: Informatik Student

  • Private Nachricht senden

7

29.07.2015, 10:24

Ich habe die Hoffnung, dass er wenigstens weiss dass es "Methoden" gbt und vielleicht hilft ihm die Erklärung ;)

8

29.07.2015, 20:37

Weisst du was eine Funktion/Methode ist?
Wenn nein: Grundlagen Buch holen und durcharbeiten ;)
Wenn ja: Eine Methode wird immer nach diesem Muster aufgerufen: NameDerMethode(Paramter) . Weil nach der Variable zahl1 direkt als nächstes Zeichen eine Klammer aufgeht, denkt der Compiler, dass du eine Methode aufrufen möchtest ABER er merkt auch, dass zahl1 eine Variable(hoffentlich nicht vom Typ int) ist. Daher die Meldung:"Ey, ich erkenne ein Muster für eine Methode, aber der Name führt mich zu einer Variable!". Du möchtest die ToInt32 Methode aufrufen und als Parameter zahl1 übergeben. Also so: Convert.ToInt32(zahl1) . Das Convert steht noch davor, da die Methode ToInt32 Teil der Klasse Convert ist.

was genau eine methode ist weiss ich leider noch nicht

aber trotzdem danke für die schnelle antwort :)

ERROR

Alter Hase

Beiträge: 417

Wohnort: Paderborn

Beruf: Informatik Student

  • Private Nachricht senden

9

29.07.2015, 21:24

womit lernst du denn? Eventuell wäre es besser in dem Buch/Kurs/was auch immer erstmal etwas weiter zu machen, bevor du was eigenes programmierst ;)

10

30.07.2015, 03:14

womit lernst du denn? Eventuell wäre es besser in dem Buch/Kurs/was auch immer erstmal etwas weiter zu machen, bevor du was eigenes programmierst ;)
Ich hab mir das buch Einstieg in Visual C# von thomas theis geholt
Ich hab mir auch noch einige youtube tutorials angekuckt aber trotzdem danke noch für denn tipp

Werbeanzeige