下面代码中,错误使用代理构造的是
A、struct A{ A(): A(2) {} A(int x){} A(double d){} };
B、struct A{ A(): A{2} {} A(int x): A{static_cast <double> (x)}{} A(double d):A{}{} };
C、struct A{ A(): A(2) {} A(int x){} A(double d) :A{static_cast <int> (d)}{} };
D、struct A{ A() {} A(int x): A{1.0}{} A(double d):A{}{} };
E、struct A{ A() {} A(int x): A{}{} A(double d):A{}{} };