c++在类中继承基类过多导致冲突的解决方案

在实际的项目过程中某个类有时候很可能我们会继承多个基类,这个时候就会容易造成冲突,但是这些基类我们又必须要使用,不可能说将冲突的基类给删掉,这个时候我们改怎么办呢?这里有一个比较简单的解决方案, 就是在这个类里面再定义一个类,让定义的这个类去继承冲突的类

下面附上实例代码:

<1> .h文件



#ifndef __IPOD_AUDIO_WINDOW_JUCEHEADER__
#define __IPOD_AUDIO_WINDOW_JUCEHEADER__

#include "JuceHeader.h"
#include "SkGUI.h"
#include "UIControl/UIHelper.hpp"
#include "Utils/SystemHelper.hpp"
#include "Utils/SysInfoHelper.hpp"
#include "UIControl/UIScrollHelper.hpp"
#include "UIControl/TitleBar.hpp"
#include "SysInfoIndexDefine.h"
#include "MsgDefine.h"
#include "SPLog.h"
#include "DriverLogger.h"
#include "iPodPublicDef.h"
#include "SkAppleAccessory.h"

class iPodAudioWindow  : public CSPWindow, public ButtonListener, public ComponentListener,public ScrollBoxListener, public MultiTimer, public SliderCtrlListener
{
public:
	iPodAudioWindow();

	~iPodAudioWindow();

	
	void OnStartUpdateList();
	

private: 
	class CreateSbListS:public Thread
	{
	public:
		 CreateSbListS(iPodAudioWindow& iPodwindows):m_iPodAudiowindows(iPodwindows)
		{
		
		}
		void startSession()
		{
			startThread(0);

		}
		 
		void stopSession()
		{
			stopThread(500);
		}
		void run()
		{
			m_iPodAudiowindows.OnStartUpdateList();
		}
	private:
		iPodAudioWindow& m_iPodAudiowindows;
	};
private:
	CreateSbListS *m_CreateSbList;
	BOOL m_bStopRefeshList;

};


#endif   // __MAINDEMOWINDOW_JUCEHEADER__


<2>.cpp 文件 构造函数代码

iPodAudioWindow:: iPodAudioWindow()
	{	
		m_CreateSbList = new CreateSbListS(*this);
		LOG(LV_INFO, L"iPodAudioWindow : loadCtrl: Success!\n");
	}


//上面的代码是实际项目中写的代码,仅供大家参考


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值