Вызов функции D напрямую из C ++
Я прошелhttp://dlang.org/cpp_interface.html и во всех примерах, даже в тех, где некоторый код C ++ вызывает некоторый D-код, основная функция находится в D (и поэтому вызываемый двоичный файл - это тот, который скомпилирован из исходного файла D). Пример "вызова D из C ++" в документе имеет функцию foo, определенную в D, которая вызывается из функциональной панели в C ++, а bar, в свою очередь, вызывается из главной функции в D.
Можно ли просто вызвать D-код из функции C ++? Я пытаюсь сделать что-то простое, как следующее, но продолжаю получать ошибки сборки:
В D:
import std.stdio;
extern (C++) void CallFromCPlusPlusTest() {
writeln("You can call me from C++");
}
Затем в C ++:
#include <iostream>
using namespace std;
void CallFromCPlusPlusTest();
int main() {
cout << "hello world"<<"\n";
CallFromCPlusPlusTest();
}