我有CFrameWndEx几个停靠CDockablePanes的窗口,但是当停靠窗格的大小更改时,我似乎无法收到通知(因此我可以相应地调整其他窗口的大小)。尝试 Spy++ 来检查消息,但自定义绘制似乎是唯一的(这似乎不合适)并且还尝试覆盖 RecalcLayout,但在这种情况下不会调用。 OnSize不起作用,因为框架本身的大小没有改变。有任何想法吗?
(Ps:我很确定这是可能的,因为我曾经有一个拆分窗口作为“客户”区域,并且在调整窗格大小时它会神奇地调整自己的大小)
我们有一个广泛的代码库,目前使用原始指针,我希望迁移到unique_ptr.但是,许多函数期望原始指针作为参数,并且在这些情况下不能使用unique_ptr.我意识到我可以使用get()方法传递原始指针,但这会增加我必须触摸的代码行数,而且我发现它有点难看.我已经推出了我自己的unique_ptr,它看起来像这样:
template <class T>
class my_unique_ptr: public unique_ptr <T>
{
public:
operator T*() { return get(); };
};
Run Code Online (Sandbox Code Playgroud)
然后每当我向一个期望原始指针的函数parm提供my_unique_ptr时,它会自动将其转换为原始指针.
问题:这样做有什么本质上的危险吗?我原本以为这将是unique_ptr实现的一部分,所以我认为它的遗漏是故意的 - 有谁知道为什么?