0

我正在尝试在共享内存中存储四个“双”变量和一个“整数”变量。

QSharedMemory::data()提供一个指向用 . 预留的内存的指针create(int size)。我的问题是:我怎样才能适当地将数据加入并深度复制到共享内存中,以便我可以访问另一个程序上的任何元素以进行读/写?

我看到的唯一类似的事情是将值放在QString. 那是正确的方法吗?

谢谢。

4

1 回答 1

3

这些方面的东西:

struct SharedData {
  double fourDoubles[4];
  int andAnInt;
};

QSharedMemory shared_mem;
shared_mem.create(sizeof(SharedData));
SharedData* p = static_cast<SharedData*>(shared_mem.data());
p->fourDoubles[0] = 1.0;
p->andAnInt = 42;
于 2016-07-17T19:15:49.720 回答