Last change
on this file since 2096 was
2096,
checked in by ldelgass, 14 years ago
|
Normalize line endings, set eol-style to native on *.cpp, *.h files
|
-
Property svn:eol-style set to
native
|
File size:
1.2 KB
|
Line | |
---|
1 | #include <R2/R2string.h> |
---|
2 | #include <string.h> |
---|
3 | |
---|
4 | R2string::R2string() : |
---|
5 | _string(NULL), |
---|
6 | _length(0) |
---|
7 | { |
---|
8 | } |
---|
9 | |
---|
10 | R2string::R2string(const char* str) : _string(NULL), _length(0) |
---|
11 | { |
---|
12 | if (str != NULL) { |
---|
13 | set(str, (R2int32) strlen(str)); |
---|
14 | } |
---|
15 | } |
---|
16 | |
---|
17 | R2string::R2string(const R2string& string) : _string(NULL) |
---|
18 | { |
---|
19 | set(string._string, string._length); |
---|
20 | } |
---|
21 | |
---|
22 | R2string::~R2string() |
---|
23 | { |
---|
24 | delete [] _string; |
---|
25 | } |
---|
26 | |
---|
27 | R2string& R2string::operator=(const R2string& string) |
---|
28 | { |
---|
29 | set(string._string, string._length); |
---|
30 | |
---|
31 | return *this; |
---|
32 | } |
---|
33 | |
---|
34 | R2string& R2string::operator=(const char* string) |
---|
35 | { |
---|
36 | set(string, strlen(string)); |
---|
37 | |
---|
38 | return *this; |
---|
39 | } |
---|
40 | |
---|
41 | R2string operator+(const R2string& string1, const R2string& string2) |
---|
42 | { |
---|
43 | R2string ret; |
---|
44 | ret._length = string1._length + string2._length; |
---|
45 | ret._string = new R2char[ret._length + 1]; |
---|
46 | |
---|
47 | strcpy(ret._string, string1._string); |
---|
48 | strcpy(ret._string + string1._length, string2._string); |
---|
49 | |
---|
50 | return ret; |
---|
51 | } |
---|
52 | |
---|
53 | |
---|
54 | R2string operator+(const R2string& string1, const char* string2) |
---|
55 | { |
---|
56 | R2string ret; |
---|
57 | ret._length = string1._length + strlen(string2); |
---|
58 | ret._string = new R2char[ret._length + 1]; |
---|
59 | |
---|
60 | strcpy(ret._string, string1._string); |
---|
61 | strcpy(ret._string + string1._length, string2); |
---|
62 | |
---|
63 | return ret; |
---|
64 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.