Что такое ключевые слова ref и sealed в C ++? - PullRequest
14 голосов
/ 26 сентября 2011

Я только что видел некоторый (предположительно) код C ++, который содержит два неизвестных мне «ключевых слова» (я предполагаю ключевые слова, но, поскольку у меня нет контекста, они могут быть простыми #define вещами).

Похоже, что они также не появляются в стандарте C ++ 11, по крайней мере, у меня есть черновик, но, поскольку это довольно поздний черновик, я не могу представить, чтобы их просто ввели в стандарт в последнюю минуту,Это ref и sealed.

Код, в котором я их нашел, был примерно такой:

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

Кто-нибудь знает, что это за ключевые слова и для чего они предназначены?достичь?

Ответы [ 4 ]

19 голосов
/ 26 сентября 2011

Это C ++ / CLI.

A ref class - это управляемый тип.
sealed означает, что класс не может быть унаследован

8 голосов
/ 12 января 2014

Таким образом, сводка заключается в том, что ref и sealed не являются стандартными ключевыми словами C ++. Они используются в версии Microsoft.

7 голосов
/ 26 сентября 2011

sealed в C ++ / CLI примерно эквивалентно final в C ++ 11.

3 голосов
/ 26 сентября 2011

Если вас интересует новое использование этих ключевых слов в C ++ / CX для проецирования WinRT API в MS Visual C ++, вам может понравиться это видео: http://channel9.msdn.com/events/BUILD/BUILD2011/TOOL-532T с этими слайдами: http://video.ch9.ms/build/2011/slides/TOOL-532T_Sutter.pptx.Смотрите esp.слайды 8-13.Существуют и другие разговоры, но на слайде 29 приведена дополнительная информация.

...