- #include <iostream> 
- #include <cstring> 
- #include <utility> 
-   
- class String { 
- private: 
-     char *value; 
-   
- public: 
-     String(const char* str); 
-     ~String(); 
-     int length() const; 
- }; 
-   
- String::String(const char* str) 
-     : value(NULL) 
- { 
-     if (str) { 
-         value = new char[std::strlen(str) + 1]; 
-         std::strcpy(value, str); 
-     } 
- } 
-   
- String::~String() 
- { 
-     delete[] value; 
- } 
-   
- int String::length() const 
- { 
-     return (value) ? std::strlen(value) : 0; 
- } 
-   
- int main() { 
- 	String a = "Hello"; 
- 	int i = a.length(); 
- 	std::cout << i; 
- 	return 0; 
- } 
				I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0cmluZz4KI2luY2x1ZGUgPHV0aWxpdHk+CgpjbGFzcyBTdHJpbmcgewpwcml2YXRlOgogICAgY2hhciAqdmFsdWU7CgpwdWJsaWM6CiAgICBTdHJpbmcoY29uc3QgY2hhciogc3RyKTsKICAgIH5TdHJpbmcoKTsKICAgIGludCBsZW5ndGgoKSBjb25zdDsKfTsKClN0cmluZzo6U3RyaW5nKGNvbnN0IGNoYXIqIHN0cikKICAgIDogdmFsdWUoTlVMTCkKewogICAgaWYgKHN0cikgewogICAgICAgIHZhbHVlID0gbmV3IGNoYXJbc3RkOjpzdHJsZW4oc3RyKSArIDFdOwogICAgICAgIHN0ZDo6c3RyY3B5KHZhbHVlLCBzdHIpOwogICAgfQp9CgpTdHJpbmc6On5TdHJpbmcoKQp7CiAgICBkZWxldGVbXSB2YWx1ZTsKfQoKaW50IFN0cmluZzo6bGVuZ3RoKCkgY29uc3QKewogICAgcmV0dXJuICh2YWx1ZSkgPyBzdGQ6OnN0cmxlbih2YWx1ZSkgOiAwOwp9CgppbnQgbWFpbigpIHsKCVN0cmluZyBhID0gIkhlbGxvIjsKCWludCBpID0gYS5sZW5ndGgoKTsKCXN0ZDo6Y291dCA8PCBpOwoJcmV0dXJuIDA7Cn0=