Unmanaged/Managed Code nutzen
-
Guten Morgen,
ich habe ein MFC Projekt und möchte in diesem gerne .net Programmstücke integrieren (um unter anderem die System-Klasse nutzen zu können).
Ich nutze Visual Studio 2003 dafür und würde das gerne da drin auch umsetzen.
Ist das möglich? Ich habe bereits gelesen, dass man dann Einstellungen bezüglich managed & unmanaged Code vornehmen muss, nur wo und wie mache ich das?
LG
-
Projekteinstellungen|General|Use Managed Extensions: Yes
ich empfehle Dir aber, dies nur für bestimmte Dateien zu machen, wo Du auch .NET verwendet willst.
Auch rate ich es Dir nicht wirklich in VS2003, da Du hier kein C++/CLI hast, sondern "Managed C++", was Dir der Umstieg später auf VS200x nicht gerade einfach macht (es gibt zwar ein "Compatibilitäts-Mode, aber C++/CLI ist halt "schöner").
-
Mh okay, danke schon mal für deine Antwort. Werde allerdings um VS2003 wohl leider nicht rumkommen. Werde es dann mal mit Managed C++ probieren.
Hätte da dennoch eine kurze Frage:
Ab .NET Framework 2.0 hat man ja die Möglichkeit System::Collections::Generic zu nutzen, die z.B. sehr hilfreich bei "SortedList" oder "List" ist.
Bei VS2003 habe ich leider nur das .NET Framework 1.1 und somit "nur" die System::Collections Klasse.
Mein Frage nun: Wie kann ich z.B. die Deklaration:System::Collections::Generic::SortedList<int, String^>
bzw.
System::Collections::Generic::List<String^>
nun in Managed C++ schreiben?
Die System::Collection Klasse besitzt zwar auch eine SortedList Methode (leider keine "List"-Methode), allerdings klappt die Anwendung dort nicht wie unter System::Collections::Generic.LG
-
System::Collection ist ein Namespace und keine Klasse!
Dafür sind List und SortedList Klassen und keine Methoden!Simon
-
Ja gut, stimmt, danke für die Korrektur.
Hättest du vielleicht trotzdem ne Lösung für mein genanntes Problem?
-
Du musst es selber machen.... also einfach das implementieren, was Du willst. Am einfachsten abgeleitet von "CollectionBase".
-
Ich kann mir da leider gerade nicht wirklich etwas drunter vorstellen.
Hätte vielleicht jemand ein genaues Beispiel dazu?