【发布时间】:2014-02-20 01:56:35
【问题描述】:
我正在编写一个程序,它有一个可移植的 C++ 后端,我们想为其创建一个 WinRT Xaml 前端。我想将我们的模型保留在纯 C++ 代码中,并在 C++/CX 中创建一个视图,该视图反映了我们可以在前端传递和使用的 C++ 模型。有什么标准方法吗?
例如:
class Person
{
public:
const std::wstring GetName() const;
void SetName(const std::wstring& value);
private:
std::wstring m_Name;
}
ref class PersonMirror : INotifyPropertyChanged
{
public:
property Platform::String^ Name
{
Platform::String^ get();
void set(Platform::String^ value);
}
private:
std::shared_ptr<Person> m_Person;
}
在这方面我不知道该怎么做:
- 如何从本机类获取关联的 ref 镜像类。我可以将 void* 转换为 PersonMirror^ 并与 GC 讨论持有对该对象的引用吗?
- 是否有用于触发事件的 C++ 实现?或者我想如果我可以保持这是一对一的关系,我也许可以只使用函数指针?
【问题讨论】:
-
您真的需要为您拥有的每个 C++ 类创建一个 CX 包装器吗?