在将我的 C++ 数据模型连接到我的 Cocoa 表列 UI 时,我想知道是否可以将 ID(标识符)处的 C++ 类实例提供给 initWithIdentifier
// what magic needs to occur to create an id from a CPP class?
id someIDMadeFromAClassInstance = a_ptr_to_a_cpp_class_instance;
NSTableColumn *col = [[NSTableColumn alloc] initWithIdentifier:someIDMadeFromAClassInstance"];
这样做的重点是,当调用 NSTable 的数据源方法 objectValueForTableColumn 时,我可以检索 id 并以某种方式将其转换回有效的 C++ 类实例:
id columnIdentifer = [aTableColumn identifier];
MyCPPClass* pAValidClass = [someMagicOnTheID columnIdentifer];
pAValidClass->AClassMethod();
我猜有一种更传统的方法可以做到这一点,但我想简化 Cocoa UI 和纯 C++ 模型之间的连接。