В некоторых файлах .h в XAML SwapChainPanel DirectX interop sample члены объявляются защищенными частями.Что делает доступный «защищенный частный» доступ к визуальному C++?
Как это отличается от просто защищенного или просто частного?
В некоторых файлах .h в XAML SwapChainPanel DirectX interop sample члены объявляются защищенными частями.Что делает доступный «защищенный частный» доступ к визуальному C++?
Как это отличается от просто защищенного или просто частного?
См. Namespaces and Type Visibility (C++/CX) в документации. Существует таблица под названием Доступность и видимость члена, в котором объясняются различные модификаторы доступа. В частности,
защищенные частный или Личная: Не отображается в метаданных; защищенной доступности в приложении или компоненте.
Вы должны использовать это, если хотите, чтобы элемент был защищен, чтобы вы могли получить к нему доступ из производных классов, определенных в одном модуле, но вы не хотите, чтобы член присутствовал в метаданных. Вещи, отсутствующие в метаданных, не могут использоваться в ABI.
Когда это полезно? Ref classes and structs (C++/CX) страницы в документации объясняет, что ...
типов Standard C++ должен иметь частного, внутреннего или защищенные частный доступности, которая предотвращает их от излучаемых метаданных.
Таким образом, первичное использование защищено частная, если вы хотите, защищенный элемент, который использует функцию языка С ++, которые не могут быть использованы в ABI. Две связанные страницы документации и остальная часть документации C++/CX содержат более релевантную информацию.