It does though from the looks of it, it will require the user to type a specific format which includes parens.
Alternatively, complex<double> has the following constructor:
complex( const double& r = double(), const double& i = double() )
I would use that constructor.
Ask the user to enter two doubles - first the real part then the imaginary. Then use the above constructor with the two values entered as parameters to construct the double.