To a great extent C++ exceptions exist and are the way they are because you can't return an error from a constructor.
So yeah, you're right that constructors led to exceptions, unless the designers of C++ had been willing to go back to the drawing board and entirely redo constructors.
Didn't constructors (1979) come before exceptions (1986)? So no that's not the case.