Do you have to write some kind of D header file for foreign C++ functions? Otherwise, how would D even know about the existence of e.g. vector<int>::push?
You will need to recreate the C++ function definitions in D and mark them extern(C++), but that's about it.
You will need to recreate the C++ function definitions in D and mark them extern(C++), but that's about it.