小编Ste*_*ven的帖子

在C++中强制要破坏某些东西

我正在开发一个C++应用程序,它内部有一些控制器对象,这些控制器对象是定期创建和销毁的(使用new).这些控制器必须将自己注册到另一个对象(让我们称之为controllerSupervisor),并在它们被销毁时取消注册.

当我退出应用程序时,我现在面临的问题是:由于破坏的顺序不是确定性的,因此在控制器本身(某些)之前,单个controllerSupervisor实例被破坏,并且当它们调用unregister方法时他们的析构函数,他们在已经被破坏的物体上这样做.

到目前为止我提出的唯一想法(有一个很大的冷,所以这可能并不重要)并没有将controllerSupervisor作为堆栈上的全局变量,而是在堆上(即使用new).但是在那种情况下我没有地方可以删除它(这都是第三方类型的库).

任何可能的选项的提示/建议将不胜感激.

c++ destructor

6
推荐指数
3
解决办法
897
查看次数

在Windows Mobile上轻松实现IPC?

在Windows Mobile上的C++项目(即没有.NET)中,我正在寻找一种在两个独立运行的应用程序之间轻松通信的方法.应用程序A将运行服务,而应用程序B将为用户提供一些功能--B必须为其调用某些功能.我宁愿不在COM中实现任何东西.

事实上,我宁愿不做任何类型的序列化或类似(即这将排除使用套接字/管道/文件),而是让B将所有参数和指针传递给A,就像A是B的一部分一样.此外,应用程序C,D和E应该能够只运行一个A实例.

我应该补充一点,B有时应该将数组(或std :: vector或std :: map)返回给A,其中大小以前不知道.

这可能在Windows Mobile和其他平台上可行吗?

ipc windows-mobile

5
推荐指数
1
解决办法
3070
查看次数

标签 统计

c++ ×1

destructor ×1

ipc ×1

windows-mobile ×1