diff options
1 files changed, 12 insertions, 3 deletions
| -rw-r--r-- | Sem. 09/StringPool/MyString/MyString.cpp | 15 |
diff --git a/Sem. 09/StringPool/MyString/MyString.cpp b/Sem. 09/StringPool/MyString/MyString.cpp index a2cee29..cad878a 100644 --- a/Sem. 09/StringPool/MyString/MyString.cpp +++ b/Sem. 09/StringPool/MyString/MyString.cpp @@ -22,9 +22,18 @@ MyString::MyString() MyString::MyString(const char* data)
{
- size = strlen(data);
- str = new char[size + 1];
- strcpy(str, data);
+ if(data == nullptr)
+ {
+ str = new char[1];
+ str[0] = '\0';
+ size = 0;
+ }
+ else
+ {
+ size = strlen(data);
+ str = new char[size + 1];
+ strcpy(str, data);
+ }
}
MyString::MyString(const MyString& other)
|
