很多年前我做过 ATL 编程,现在又走上了这条路。我记得上次,编译器有一种方法可以自动优化 put_ 和 get_(即属性)。我真的不知道我上次是怎么做到的。
目前我正在这样做:
// assume p is a pointer to an interface
CComBSTR name;
p->get_Name(&name);
这段代码真的让我很烦,我相信有更好的方法:
// can we do this?
CComBSTR name(p->get_Name());
// or maybe this
CComBSTR name(p->Name);
我不知道如何使用 CComPtr 和 _com_ptr_t 做到这一点。另请注意, p 是指向同一库中接口的指针。所以我没有使用#import 或任何东西。