如何访问共享内存中创建的对象的offset_ptr?
segment = new managed_shared_memory(create_only, "MySharedMemory", segmentSize);
line = segment->construct<Line>("Line1")("line");
我想访问Line对象的offset_ptr ..
答案 0 :(得分:1)
首先,您需要使用Line类型声明偏移指针:
boost::interprocess::offset_ptr<Line> offset_p;
其次,你分配它:
offset_p = line;
现在,offset_p保存了从行到自身的偏移量,因此您可以获得指向行的指针,并在任何过程中使用它:
draw_line( offset_p.get() );