Construtor padrão com colchetes vazios

Existe algum bom motivo para que um conjunto vazio de colchetes (parênteses) não seja válido para chamar o construtor padrão em C ++?

MyObject  object;  // ok - default ctor
MyObject  object(blah); // ok

MyObject  object();  // error

Eu pareço digitar "()" automaticamente toda vez. Existe uma boa razão para isso não ser permitido?

questionAnswers(9)

yourAnswerToTheQuestion