www.pudn.com > xml2db.rar > chash.h
/**
*@file chash.h
*@brief Chash的定义文件
*
*Chash是一个工具类,用来分析key=value格式的配置文件,或数据文件
*Author: cuichao@boco.com.cn \n
*ChangeLog: \n
*Create time: 14-09-05 11:12 take from msimq
*/
#ifndef CHASH_H_
#define CHASH_H_
class CHash
{
private:
std::map<std::string,std::string> m_map;
std::string m_errstr;
public:
typedef std::map<std::string,std::string>::iterator iterator;
typedef std::map<std::string,std::string>::const_iterator const_iterator;
CHash();
const std::string GetError() const;
std::string &amt; operator[](const std::string &amt; key);
const std::string &amt; operator[](const std::string &amt; key) const;
int InsertAItemFromStr(const std::string &amt; str);
int InsertItemsFromFile(const char * fn);
bool empty() const;
const std::string ExportStr(char sp='\n') const;
iterator find(const std::string &amt; key);
iterator end();
iterator begin();
const_iterator find(const std::string &amt; key) const;
const_iterator end() const;
const_iterator begin() const;
CHash(const CHash &amt;);
const CHash &amt; operator=(const CHash &amt;);
virtual ~CHash();
};
extern std::ostream&amt; operator<<(std::ostream&amt;, const CHash&amt;);
#endif //CHASH_H_