summaryrefslogtreecommitdiff
path: root/Source/Asura.Engine/String.h
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2019-01-30 23:09:54 +0800
committerchai <chaifix@163.com>2019-01-30 23:09:54 +0800
commitfc1713e9df3ae8db6e612610023e7bd5f6b6f5fe (patch)
treeb4a06493c102c3b16dabf00327587c4d26429455 /Source/Asura.Engine/String.h
parente4a3a354f523ea12601dae2f7cd89caf7aae6c00 (diff)
*misc
Diffstat (limited to 'Source/Asura.Engine/String.h')
-rw-r--r--Source/Asura.Engine/String.h75
1 files changed, 75 insertions, 0 deletions
diff --git a/Source/Asura.Engine/String.h b/Source/Asura.Engine/String.h
new file mode 100644
index 0000000..6d0ec3a
--- /dev/null
+++ b/Source/Asura.Engine/String.h
@@ -0,0 +1,75 @@
+#ifndef __ASURA_ENGINE_STRING_H__
+#define __ASURA_ENGINE_STRING_H__
+
+#include <string>
+
+namespace AsuraEngine
+{
+
+ ///
+ /// װstd::string
+ ///
+ class String : public std::string
+ {
+ public:
+ inline String()
+ : std::string()
+ {
+ }
+
+ inline String(const std::string& str)
+ : std::string(str)
+ {
+ }
+
+ inline String(const String& str)
+ : std::string(str)
+ {
+ }
+
+ inline String(const char* str)
+ : std::string(str)
+ {
+ }
+
+ inline String& operator = (const String& str)
+ {
+ std::string::operator=(str);
+ return *this;
+ }
+
+ inline operator const char* () const
+ {
+ return this->c_str();
+ }
+
+ inline const char* str() const
+ {
+ return this->c_str();
+ }
+
+ inline String(const String& s2, size_type pos2, size_type len2)
+ : std::string(s2, pos2, len2)
+ {
+ }
+
+ inline String(const char* buf, size_type bufsize)
+ : std::string(buf, bufsize)
+ {
+ }
+
+ inline String(size_type repetitions, char c)
+ : std::string(repetitions, c)
+ {
+ }
+
+ inline int length() const
+ {
+ return size();
+ }
+
+ };
+
+}
+
+#endif \ No newline at end of file