Hallo, zurzeit habe ich ein Problem mit dem erstellen von Objekten:
void ObjanClick(object sender, EventArgs e)
{
int leistung;
string marke;
string farbe;
Kfz fahrz = new Kfz[4];
fahrz[0].leistung=120;
fahrz[0].marke="BMW";
fahrz[0].farbe="gelb";
fahrz[1].leistung=220;
fahrz[1].marke="VW";
fahrz[1].farbe="schwarz";
fahrz[2].leistung=300;
fahrz[2].marke="Toyota";
fahrz[2].farbe="grau";
fahrz[3].leistung=1000;
fahrz[3].marke="VW Kaefer";
fahrz[3].farbe="weiß";
}
Bei dem Code bekomme ich eine Fehlermeldung:> Fehlermeldung:
Der Typ- oder Namespacename 'Kfz' konnte nicht gefunden werden. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) (CS0246)
Kann mir dort jemand helfen?
In Welchem Buch hast du das denn so gelesen? 😃
Kfz ist in deinem Fall ein Objekt zu dem es keine Klasse gibt.
Bedeutet: Die Felder "leistung", "marke" und "farbe" gehören als Eigenschaften in eine extra Klasse, welche "Kfz" heißt.
Siehe hierzu auch: https://msdn.microsoft.com/de-de/library/x9afc042.aspx
Mein Blog: http://www.frickelblog.de
ist dies so korrekt:
void ObjanClick(object sender, EventArgs e)
{
int leistung;
string marke;
string farbe;
Kfz fahrz = new Kfz[4];
}
class Kfz
{
fahrz[0].leistung=120;
fahrz[0].marke="BMW";
fahrz[0].farbe="gelb";
fahrz[1].leistung=220;
fahrz[1].marke="VW";
fahrz[1].farbe="schwarz";
fahrz[2].leistung=300;
fahrz[2].marke="Toyota";
fahrz[2].farbe="grau";
fahrz[3].leistung=1000;
fahrz[3].marke="VW Kaefer";
fahrz[3].farbe="weiß";
}
Hi,
nope - diese Fragen würden sich jedoch mit einem Buch erübrigen.
Grundlegend: Schau dir bitte ein solches Buch mal genau an - du machst DIR das Leben dadurch einfacher. Denn du scheinst bisher nicht zu verstehen, was du überhaupt tust.
Hier mal ein Beispiel:
namespace Trash
{
class Program
{
static void Main(string[] args)
{
Kfz[] fahrzeuge = new Kfz[4]; // Array von Fahrzeugen
// fahrzeuge[0] ist das erste element des Arrays
fahrzeuge[0] = new Kfz(); // ansonsten wäre es noch kein kfz - sondern NULL
fahrzeuge[0].leistung = 120;
fahrzeuge[0].marke = "BMW";
fahrzeuge[0].farbe = "gelb";
}
}
public class Kfz
{
public int leistung;
public string marke;
public string farbe;
}
}