stlwrap.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef __STLWRAP_H
00017 #define __STLWRAP_H
00018
00019 #include "simkerneldefs.h"
00020 #include <string>
00021 #include <vector>
00022
00023 NAMESPACE_BEGIN
00024
00025
00026
00027
00028
00029
00042 class SIM_API stdstring : public std::string
00043 {
00044 public:
00045 explicit stdstring() {}
00046 stdstring(const std::string& rhs) : std::string(rhs) {}
00047 stdstring(const std::string& rhs, size_type pos, size_type n) : std::string(rhs,pos,n) {}
00048 stdstring(const char *s, size_type n) : std::string(s,n) {}
00049 stdstring(const char *s) : std::string(s) {}
00050 stdstring(size_type n, char c) : std::string(n,c) {}
00051 stdstring(const_iterator first, const_iterator last) : std::string(first,last) {}
00052 };
00053
00054
00059 class SIM_API stdstringvector : public std::vector<stdstring>
00060 {
00061 public:
00062 explicit stdstringvector() {}
00063 explicit stdstringvector(size_type n, const stdstring& v = stdstring()) : std::vector<stdstring>(n,v) {}
00064 stdstringvector(const stdstringvector& x) : std::vector<stdstring>(x) {}
00065 stdstringvector(const_iterator first, const_iterator last) : std::vector<stdstring>(first,last) {}
00066 };
00067
00072 class SIM_API stdcharpvector : public std::vector<const char *>
00073 {
00074 public:
00075 explicit stdcharpvector() {}
00076 explicit stdcharpvector(size_type n, const char *v = 0) : std::vector<const char *>(n,v) {}
00077 stdcharpvector(const stdcharpvector& x) : std::vector<const char *>(x) {}
00078 stdcharpvector(const_iterator first, const_iterator last) : std::vector<const char *>(first,last) {}
00079 };
00080
00081
00082 NAMESPACE_END
00083
00084
00085 #endif
00086