c++11 changed constructors to be empty, and moved logic to `__init__` methods.