2011-09-26 3 views
14

Je viens de voir du code C++ (vraisemblablement) qui porte deux "mots-clés" inconnus de moi (je suppose des mots-clés mais, comme je n'ai pas de contexte, ils peuvent être simples).Quels sont les mots-clés 'ref' et 'sealed' en C++?

Ils ne semblent pas non plus apparaître dans la norme C++ 11, au moins le brouillon que j'ai, mais, comme c'est un peu tard, je ne peux pas imaginer qu'ils soient juste tombés dans la norme à la dernière minute. Ils sont ref et sealed.

Le code que je les ai trouvées dans était quelque chose comme:

public ref class DevIface sealed { 
    private: 
     int currOffset; 
public: 
     DevIface (int initOffset); 
     : : : 

Est-ce que quelqu'un sait ce que ces mots-clés sont, et ce qu'ils sont censés atteindre?

Répondre

19

Ceci est C++/CLI.

Un ref class est un type géré.
sealed signifie que la classe ne peut pas être héritée

+3

Ces mots-clés sont également utilisés avec les API C++ WinRT natives pour Windows 8. – Sandeep

+1

Une classe ref dans WinRT signifie qu'il s'agit d'un type compté par ref qui peut être utilisé pour les appels ABI (interface binaire d'application). –

7

sealed en C++/CLI est à peu près équivalent à final en C++ 11.

6

Ainsi, résumé est que "ref" et "sealed" ne sont pas des mots-clés C++ standard. Ils sont utilisés dans la version Microsoft.

Questions connexes