the incredible Leitman
Erfahrenes Mitglied
Hallo Leute ^^
Ist vl ne absolut dumme Frage, aber ich komme grad ur nicht weiter -.-
Ich habe in einem namespace 2 Klassen definiert, kann aber nicht von einer Klasse auf die andere zugreifen, da diese scheinbar vorher initialisiert werden muss
Dank der Hilfe eines Freundes bin ich soweit mit meinen Versuchen: (Special thx 2 N!L *gg*)
Das funktioniert angeblich ohne Probleme :-O
Wenn ich denselben Code jetzt auf managed C++ umschreibe:
bekomme ich immer die Fehlermeldungen
"error C2143: syntax error : missing ';' before '^'"
und "error C4430: missing type specifier - int assumed. Note: C++ does not support default-int"
Warum das?
Egal, welche Klasse ich zuerst definiere, ich kann nicht auf die nachfolgenden zugreifen
Muss ich eine Art Klassen-Prototypen verwenden?
Oder was mache ich falsch!
Was fehlt mir noch für Verständniss?
Bitte, hoffentlich kann mich jemand aufklären ^^
thx & mfG
Leitman
Ist vl ne absolut dumme Frage, aber ich komme grad ur nicht weiter -.-
Ich habe in einem namespace 2 Klassen definiert, kann aber nicht von einer Klasse auf die andere zugreifen, da diese scheinbar vorher initialisiert werden muss
Dank der Hilfe eines Freundes bin ich soweit mit meinen Versuchen: (Special thx 2 N!L *gg*)
C#:
using System;
using System.Collections.Generic;
using System.Text;
namespace LeithiKlasse
{
class foo
{
bar b = new bar();
}
class bar
{
foo a = new foo();
}
class Program
{
LeithiKlasse.Program prog = new Program ();
static void Main(string[] args)
{
LeithiKlasse.bar b = new bar();
LeithiKlasse.foo a = new foo();
}
}
}
Wenn ich denselben Code jetzt auf managed C++ umschreibe:
C++:
using namespace System;
using namespace System::Collections::Generic;
using namespace System::Text;
namespace LeithiKlasse
{
public ref class foo
{
bar ^b; // errors C2143 / C4430
};
public ref class bar
{
foo ^a;
};
public ref class Program
{
static LeithiKlasse::Program ^prog = gcnew Program ();
static void main()
{
LeithiKlasse::bar ^b = gcnew bar();
LeithiKlasse::foo ^a = gcnew foo();
}
};
}
"error C2143: syntax error : missing ';' before '^'"
und "error C4430: missing type specifier - int assumed. Note: C++ does not support default-int"
Warum das?
Egal, welche Klasse ich zuerst definiere, ich kann nicht auf die nachfolgenden zugreifen
Muss ich eine Art Klassen-Prototypen verwenden?
Oder was mache ich falsch!
Was fehlt mir noch für Verständniss?
Bitte, hoffentlich kann mich jemand aufklären ^^
thx & mfG
Leitman