6
6
class String {
7
7
public:
8
8
String ();
9
+ String (const String& str);
10
+ String (const String& str, size_t pos, size_t len);
11
+ String (const char * s);
12
+ String (size_t n, const char c);
13
+ String& operator =(const String& str);
14
+ String& operator =(const char * s);
15
+ String& operator =(char c);
9
16
~String ();
10
17
public:
11
18
// Capacity
12
19
bool empty () const ;
13
20
size_t size () const ;
14
21
size_t length () const ;
22
+ size_t capacity () const ;
23
+ void reserve (const size_t n);
15
24
void resize (size_t n);
16
25
void clear ();
17
26
void shrink_to_fit ();
@@ -24,6 +33,17 @@ class String{
24
33
String& operator +=(const String& str);
25
34
String& operator +=(const char *s);
26
35
String& operator +=(const char c);
36
+ String& append (const String& str);
37
+ String& append (const String& str, const size_t subpos, const size_t sublen);
38
+ String& append (const char * s);
39
+ String& append (const char * s, const size_t n);
40
+ String& append (const size_t n, const char c);
41
+ void push_back (const char c);
42
+ String& insert (const size_t pos, const String& str);
43
+ String& insert (const size_t pos, const String& str, const size_t subpos, const size_t sublen);
44
+ String& insert (const size_t pos, const char * s);
45
+ String& insert (const size_t pos, const char c);
46
+ String& insert (const size_t pos, const size_t n, const char c);
27
47
private:
28
48
Vector<char > _data;
29
49
};
0 commit comments