2011-09-26 24 views
14

Tôi vừa xem một số mã C++ có thể thể hiện hai từ khóa "không biết" (tôi giả định từ khóa nhưng, vì tôi không có ngữ cảnh, chúng có thể đơn giản là #define).Từ khóa 'ref' và 'sealed' trong C++ là gì?

Chúng dường như không xuất hiện trong tiêu chuẩn C++ 11, ít nhất là bản nháp mà tôi có nhưng, vì đó là một bản nháp khá muộn, tôi không thể tưởng tượng chúng bị rơi vào tiêu chuẩn cuối cùng phút. Chúng là refsealed.

Mã tôi tìm thấy chúng trong một cái gì đó như:

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

Có ai biết những gì các từ khoá này, và những gì họ đang có nghĩa là để đạt được?

Trả lời

19

Đây là C++/CLI.

A ref class là loại được quản lý.
sealed có nghĩa là lớp không thể được thừa hưởng

+3

Những từ khóa này cũng được sử dụng với API C++ WinRT gốc cho Windows 8. – Sandeep

+1

Lớp ref trong WinRT có nghĩa là loại được tính lại có thể được sử dụng trên các cuộc gọi ABI (giao diện nhị phân ứng dụng). –

7

sealed trong C++/CLI là tương đương với final trong C++ 11.

6

Do đó tóm tắt là "ref" và "sealed" không phải là từ khóa C++ chuẩn. Chúng được sử dụng trong phiên bản microsoft.

Các vấn đề liên quan