Windows C++;具有设计含义的委托 我有一个多线程C++窗口设计问题。假设我有一个C++类,如下:
Windows C++;具有设计含义的委托 我有一个多线程C++窗口设计问题。假设我有一个C++类,如下:,c++,multithreading,C++,Multithreading,classccamera\u AxisNew:public CCamera\u IPBase64假设在基类CCamera\u IPBase64中,实现了PTZThreadProc(…),我从队列中读取命令,并仅通过其中一个异步发送PTZ命令 对象指针间接地,IPTZControl->SetProperty(..)其中对象指针IPTZControl=new CCamera\u AxisNew或其他类似构造函数或 直接通过this->SetProperty() 方法PTZThreadProc(..)
classccamera\u AxisNew:public CCamera\u IPBase64
假设在基类CCamera\u IPBase64中,实现了PTZThreadProc(…)
,我从队列中读取命令,并仅通过其中一个异步发送PTZ命令
IPTZControl->SetProperty(..)
其中对象指针IPTZControl=new CCamera\u AxisNew
或其他类似构造函数或this->SetProperty()
方法PTZThreadProc(..)
在单独的线程上生成CCamera_IPBase64
中,我可以通过同步发送非PTZ命令,绕过在单独线程上运行的PTZThreadProc(..)
IPTZControl->WriteCamera(…)
,或this->WriteCommand(..)
CCamera_IPBase64
对象,该对象使用主线程接收请求,并仅在队列上放置PTZ命令
我的问题是使用委派IPTZControl->SetProperty(..)
还是避免委派,例如this->SetProperty()
非常感谢您的帮助 最好使用此->SetProperty()并利用继承来避免委派,因为它避免委派设计模式所需的额外冗余代码 请格式化您的问题。@n.m.您能告诉我如何在底部灰色区域格式化我的问题吗。非常感谢。单击编辑,选择代码,然后单击{}代码格式按钮,或者在每行缩进四个额外的空格。然后从最后一行中删除代码格式。然后读这本书help@Sami库莫宁,谢谢你的评论。我只是尝试用四个额外的空格缩进每一行,并从最后一行中删除代码格式。