== Quote from dsimcha ([email protected])'s article > == Quote from grauzone ([email protected])'s article > > dsimcha wrote: > > > Is there a way to run a class's c'tor on a block of memory from a template > > > function? For example: > > > > > > C newClass(C, CtorArgs...)(CtorArgs args) { > > > // Allocate, initialize. > > > // Want to call the c'tor that takes type CtorArgs. > > > } > > Deeply hidden on the Digitalmars homepage, it hints _ctor() and shows > > how to correctly construct an object (if you're using dmd): > > http://www.digitalmars.com/techtips/class_objects.html > Yeah, I had thought of this, but apparently it doesn't work anymore. This is > called excessive encapsulation--making things so opaque that, when someone > really > knows what they're doing and has a good reason to mess around with the > internals, > they still can't. I'll file an enhancement requesting that this be put back.
Never mind, I realized I was doing two things wrong: 1. It changed from _ctor to __ctor. 2. The class needs to define a c'tor If it doesn't, then there's no default __ctor() that takes no args. However, this is easy to check for in a static if statement.
