我正在为一个项目重新回到C ++世界,在花费大量时间和C#以及C ++ / CX中的新东西之间,我有点生疏。
何时使用C ++ / CX中引入的ref class
类型?
内置引用计数句柄似乎很好,似乎是尽可能使用ref类的一个很好的理由(忽略可移植性问题)。但是,我不确定这些类型是否增加了额外的开销?或者,如果还有其他原因限制其使用?
答案 0 :(得分:7)
请记住,C ++ / CX是一种语言扩展,可以轻松处理WinRT类型。当您希望使用其他语言(如Javascript或C#)使您的类型可用时,您只需要声明自己的 ref class 。换句话说,当您创建WinRT组件时。
对于其他一切,应该是绝大多数代码,使用标准的C ++ 11语法和正常的主要C ++标准库类。声明一个不暴露给其他语言的ref类只会产生不必要的开销。