00001
#ifndef STLEXT_H
00002
#define STLEXT_H
00003
00004
#include <iostream>
00005
#include <map>
00006
#include <string>
00007
#include <vector>
00008
using namespace std;
00009
00010
#include <stdio.h>
00011
00012
#define HASH(type) std::map<string , type>
00013
#define ITERATOR(obj) typeof(obj.begin())
00014
#define foreach(v,i) for(ITERATOR(v) i = v.begin() ; i != v.end() ; i++)
00015
00017
template<
typename T>
00018 bool KeyExists(map<string,T> m ,
const string &key)
00019 {
00020
typename map<string,T>::iterator locat = m.find(key);
00021
00022
return (locat != m.end());
00023 }
00024
00027
bool FileExist(
const char *src);
00028
00032 struct Exit
00033 {
00034
Exit(
int r);
00035
00036 int ret;
00037 };
00038
00039 ostream &
operator<<(ostream &os ,
const Exit &e);
00040
00041
#endif