Afficher : Delphi C++
Préférences d'affichage

Modifications C++Builder pour XE

De RAD Studio XE2

Remonter à Nouveautés de Delphi et C++Builder XE


Remarque : Ce document décrit une version passée.
  • La syntaxe étendue de __property permet une implémentation plus facile des interfaces dans C++ :
    C++Builder a étendu la syntaxe du mot clé __property pour ajouter le nouvel attribut implements. L'attribut implements vous permet d'implémenter une interface dans une classe basée sur TObject sans utiliser l'héritage. L'utilisation de __property implements rend aussi plus facile la transition de ATL à DAX pour les projets C++Builder XE ActiveX, ainsi que l'utilisation des assistances ActiveX fournies par DAX. Voir Support de l'attribut __property implements dans C++Builder XE.
  • Les applications C++ qui utilisent la VCL définissent à présent l'option Mappage _TCHAR sur wchar_t :
    • Les nouvelles applications C++ qui utilisent la VCL (notamment les applications console C++) définissent à présent automatiquement l'option Mappage TCHAR sur wchar_t au lieu de char (comme auparavant).
    • Ces applications doivent aussi contenir un point d'entrée _tmain(...), qui migre sur main.
    • Ces applications C++ utilisent automatiquement les fonctions flottantes correctes. Voir Activation des applications C++ pour Unicode.
    • La fonction System.UnicodeString.t_str renvoie maintenant const wchar_t* au lieu de const char*. En outre, t_str est devenu obsolète.
  • Nouvelles règles des références rvalue :
    Des modifications ont été apportées au compilateur pour supporter les nouvelles règles des références rvalue.
    • La spécification C++ (le document de travail) a changé les règles de liaison des références rvalue. En bref, une référence rvalue ne plus être liée à un lvalue nommé (excepté dans la résolution de surcharge, qui n'a pas changé).
    Voir Références rvalue (C++0x).
  • Nouveau fichier d'en-tête stdbool.h :
    Ce fichier d'en-tête C99 fait maintenant partie de la bibliothèque d'exécution C dans C++Builder. stdbool.h définit des valeurs booléennes telles que bool, true, false et __bool_true_false_are_defined.
  • Nouvelle définition de l'option -Vbr pour BCC32.EXE :
    L'option -Vbr du compilateur C++ est à présent un commutateur général d'ancienne compatibilité pour la liaison de tous les références, pas seulement la liaison non-const. Ainsi la définition de -Vbr est passée de :
    "Autoriser la liaison de références non-const"
    à :
    "Autoriser les anciennes règles Borland pour la liaison de références"
    Voir BCC32, le compilateur C++ en ligne de commande.
  • Aide rétablie pour les erreurs CodeGuard :
    L'aide est à présent disponible pour les erreurs CodeGuard spécifiques. Voir Erreurs CodeGuard.
  • Modifications de dllimport et dllexport :
    __declspec(dllimport) et __declspec(dllexport) sont à présent implémentés pour les classes de template, comme suit :
    • Le modificateur dllimport empêche l'instanciation des fonctions de template inline (inline ou out-of-line).
    • Le modificateur dllexport provoque l'instanciation et l'exportation de la classe entière, y compris les fonctions inline.
  • Support supplémentaire pour les informations RTTI de Delphi dans C++
    L'extension de mot clé __declspec peut être utilisée avec l'attribut delphirtti. Si une classe est marquée par __declspec(delphirtti), le compilateur génère alors les informations RTTI pour ses méthodes publiques. Voir __declspec(delphirtti).

Voir aussi

Versions précédentes
Autres langues