D语言VisualD中使用C/C++与D语言混合编程

        在D语言的工程中,是可以同时使用C/C++代码文件的。 在VisualD中有一个C/C++编译器命令项。默认使用的是微软的C/C++编译器。

image

    下面来测试下C/C++与D的混合编译。先建立一个Console工程,如下图:

   image   接下来添加一个test_cpp.cpp文件和一个test_c.c文件,注意一定要写上后缀,要不就会变成.d文件

image    建好后如下图:

image    test_c.c文件使用以下代码

#include "stdio.h"
void test_c_hello()
{
    printf("Hello c language!
");
}

    test_cpp.cpp文件使用以下代码

#include "stdio.h"
void test_cpp_hello()
{
    printf("Hello c++ language!
");
}

    main.d文件中使用以下代码

import std.stdio;

extern(C) void test_c_hello();
extern(C++) void test_cpp_hello();

int main(string[] argv)
{
    test_c_hello();
    test_cpp_hello();
    writeln("Hello D-World!");
    readln();
    return 0;
}

     编译工程,这时你会发现有一个错误:

image     这个错误是说dmc这个编译器没找到,这个dmc也是d语言作者的一个c语言编译器。这个可以从作者网站上可以下载得到,或是下载dmd1.0版本里,就有这样一个编译器。这个我们不讨论。

     我们是今天是要介绍与VS的C/C++进行混编,这需要设置一个选项,打开工程属性页把下面两个选项选上:

image    

     再次编译,如下图:

image     这时你会神奇的发现,编译完成了。 ~~~~~

     image

      运行成功。

作者:宛宏南

原文地址:https://www.cnblogs.com/wanhongnan/p/5775640.html