抽象类中的this到底指的是哪个子类实例呢?请看代码:
thread.h
#ifndef __THREAD_H__
#define __THREAD_H__
#include <iostream>
#define PATTERN_SINGLETON_DECLARE(classname) \
private: \
classname(); \
public: \
static classname * instance(); \
virtual ~classname();
#define PATTERN_SINGLETON_IMPLEMENT(classname) \
classname * classname::instance() \
{ \
static classname * _instance = NULL; \
if( NULL == _instance) \
{ \
_instance = new classname; \
} \
return _instance; \
}
class CThread
{
friend void ThreadBody(void *pdat);
public:
CThread();
~CThread();
bool CreateThread();
virtual void ThreadProc(const std::string &name) = 0;
protected:
bool m_bLoop;
std::string m_name;
};
class CCaptureManager: public CThread
{
PATTERN_SINGLETON_DECLARE(CCaptureManager)
public:
void start();
private:
void ThreadProc(const st