Internally and about the generated code, is there a really difference between :
MyClass::MyClass(): _capacity(15), _data(NULL), _len(0) { }
A big difference is that the assignment can initialize members of a parent class; the initializer only works on members declared at the current class scope.