【发布时间】:2010-10-09 15:26:33
【问题描述】:
我想公开一个 CMainClass 对象的 ATL COM 集合 这样它就可以被 C#、VB 或 C++ 客户端访问。
设置集合本身没有问题,但我没有 知道如何允许 COM 客户端访问 A、B 和 C 类。 我是否应该使用包含 a 的对象来制作 A、B 和 C COM 对象 std::list 每个 ATL 集合各自对吗?
有更简单的方法吗?!?!
谢谢, 保罗H
class C
{
public:
// get/set functions...
protected:
std::string str1_;
std::list< std::string > list1_;
};
class A
{
public:
// get/set functions...
protected:
std::list< C > list1_;
};
class B
{
public:
// get/set functions...
protected:
std::string str1_;
std::string str2_;
};
class CMainClass
{
public:
void GetA( A* a ) const;
void SetA( const A& a );
void GetB( B* b ) const;
void SetB( const B& b );
protected:
A a_;
B b_;
};
【问题讨论】:
标签: c++ atl collections