diff options
| -rw-r--r-- | common/str.cpp | 12 | ||||
| -rw-r--r-- | common/str.h | 3 | 
2 files changed, 10 insertions, 5 deletions
| diff --git a/common/str.cpp b/common/str.cpp index cd2bd631ac..d62a39511e 100644 --- a/common/str.cpp +++ b/common/str.cpp @@ -108,6 +108,14 @@ String &String::operator  =(const String &str) {  	return *this;  } +String& String::operator  =(char c) { +	ensureCapacity(1, false); +	_len = 1; +	_str[0] = c; +	_str[1] = 0; +	return *this; +} +  String &String::operator +=(const char *str) {  	int len = strlen(str);  	if (len > 0) { @@ -139,10 +147,6 @@ String &String::operator += (char c) {  	return *this;  } -char String::lastChar() const { -	return (_len > 0) ? _str[_len-1] : 0; -} -  void String::deleteLastChar() {  	if (_len > 0) {  		ensureCapacity(_len - 1, true); diff --git a/common/str.h b/common/str.h index d6354481d5..704a03a4d6 100644 --- a/common/str.h +++ b/common/str.h @@ -70,6 +70,7 @@ public:  	uint size() const				{ return _len; }  	bool isEmpty() const	{ return (_len == 0); } +	char lastChar() const	{ return (_len > 0) ? _str[_len-1] : 0; }  };  class String : public ConstString { @@ -94,6 +95,7 @@ public:  // An alternative would be to add private clone() and cloneMutable methods that   // would do the right thing.  	String &operator  =(const String &str); +	String &operator  =(char c);  	String &operator +=(const char *str);  	String &operator +=(const String &str);  	String &operator +=(char c); @@ -108,7 +110,6 @@ public:  		return _str[idx];  	} -	char lastChar() const;  	void deleteLastChar();  	void deleteChar(int p);  	void clear(); | 
