ファイル:Service.hpp
class Service
{
private:
boost::unordered_map<std::string,int> m_mapModuleType2FD;
void ProcessRequest();
public:
static void* KeepAlive(void* arg);
};
ファイル:Service.cpp:
関数 Process Request でマップを更新します
void Service::ProcessRequest()
{
m_mapModuleType2FD["ak"] = 1;
LaunchKeepAlive();
}
void Service::LaunchKeepAlive()
{
pthread_create( & m_ptKeepAliveThreadID, NULL, Service::KeepAlive, NULL );
}
KeepAlive 内で更新された値を探してみました
void * Service::KeepAlive(void* arg)
{
boost::unordered_map<std::string,int>::iterator itrDummy;
itrDummy = m_mapModuleType2FD.find("AK"); --- Line 420
}
どこで私は取得し、エラー
エラー: 420 行目。静的メンバー関数でのメンバー 'Service::m_mapModuleType2FD' の無効な使用
私はC ++にちょっと慣れていません..だから、どんな入力も高く評価されます