Est-ce que toutes les fonctionnalités Standard C ++ fonctionnent en C ++ / CLI? [dupliquer]

StackOverflow https://stackoverflow.com/questions/1618811

  •  06-07-2019
  •  | 
  •  

Question

    

Cette question a déjà une réponse ici:

    
            
  •              C ++ CLI est-il un sur-ensemble du C ++?                                      6 réponses                          
  •     
    

Si je viens d'inclure la classe Standard C ++ existante dans le programme C ++ / CLI, cela fonctionnera-t-il?

Dans mes tests, tout a bien fonctionné, mais est-ce vrai pour tous les programmes?

Était-ce utile?

La solution

C’est ce que Microsoft promet, oui. (J'ai regardé cette vidéo hier, dans laquelle ils l'ont explicitement mentionné - en particulier parce que l'ajout de nullptr en C ++ 0x le compromettrait)

Alors oui, si vous prenez un programme C ++ natif et le compilez en tant que C ++ / CLI, avec des non changements de code, alors oui, cela fonctionnera toujours.

Et bien sûr, si vous modifiez votre code (gcnew au lieu de nouveaux et d'autres changements "gérés", alors bien sûr, tous les paris sont désactivés et vous risquez ou non de casser le code)

Autres conseils

Si vous changez réellement la classe pour qu'elle soit une classe gérée (gc), alors non, il y aura parfois une rupture. En particulier, la sémantique de l'opérateur de suppression est modifiée car les objets sont désormais gérés par le garbage collector; la suppression d'un objet peut ne libérer aucune mémoire.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top