String::String(const char *s) { char *sl = const_cast<char*>(s); while (*sl) ++sl; range_initializer(s, ++sl); }
String::String(const char *str) { std::cout << "String(const char *str)" << std::endl; char *end = const_cast<char*>(str); while (*end) { ++end; } range_initializer(str, ++end); }
String::String(const char* s) { char *s1 = const_cast<char*>(s); while (*s1) { ++s1; } range_initializer(s, ++s1); }
SimpleString::SimpleString(const SimpleString &rhs) { // copy ctor // range_initializer(rhs._elements, rhs._end); range_initializer(rhs._first_element, rhs._first_free); std::cout << "copy constructor" << std::endl; }
SimpleString::SimpleString(const char *str) { // main ctor char *c = const_cast<char*>(str); while (*c) ++c; range_initializer(str, ++c); }
String::String(const String& rhs) { range_initializer(rhs.elements, rhs.end); std::cout << "copy constructor" << std::endl; }
String::String(const String& rhs) { range_initializer(rhs.elements, rhs.end); }
String::String(const char* s) { auto sl = s; while (*sl) ++sl; range_initializer(s, ++sl); }
String::String(const String &s) { std::cout << "String(const String &s)" << std::endl; range_initializer(s.cStringBegin, s.cStringEnd); }