Frage

    

Diese Frage bereits eine Antwort hier:

    
            
  •              Ist C ++ CLI ein Superset von C ++?                                      6 Antworten                          
  •     
    

Wenn ich nur bestehende Standard C ++ Klasse sind in C ++ / CLI-Programm, wird es funktionieren?
In meinen Tests funktionierte alles ziemlich gut, aber es ist für jedes Programm wahr?

War es hilfreich?

Lösung

Das ist, was Microsoft verspricht, ja. (Ich sah dieses Video gestern, in der sie dies ausdrücklich erwähnt - speziell, weil die Zugabe von nullptr in C ++ 0x es beeinträchtigen würde)

Also ja, wenn Sie ein native C ++ Programm und kompilieren Sie es als C ++ / CLI, mit nicht Code-Änderungen, dann ja, es wird immer noch funktionieren.

Und natürlich, wenn Sie Ihren Code ändern (gcnew anstelle von neuen und anderen „verwaltet“ ändert, dann natürlich, sind alle Wetten ab, und man könnte oder den Code nicht brechen)

Andere Tipps

Wenn Sie tatsächlich die Klasse ändern ein verwaltetes (gc) Klasse zu sein, dann nein, wird es manchmal brechen. Insbesondere wird die Semantik des delete-Operator geändert, da die Objekte nun vom Garbage Collector verwaltet werden; Löscht ein Objekt freigeben könnte keinen Speicher.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top