Meaning of C++ statement?

What is the meaning of following statement?

String& newString = *(new String(inputString));

String is class with one of the constructors taking char* as argument.

Meaning of C++ statement?

[code]String& newString = *(new String(inputString)); [/code]

new String(inputString) returns a pointer to a String Object. the * operators is probably overload to return the pointer to the base pointer to to the char that is the beginging of the string.

[code]String& newString = value[/code] just calls the construtor which takes a type of value (char * in this case)

and newString is now a reference to the newly created object.