• 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

          运行成功。

    作者:宛宏南

  • 相关阅读:
    随机性的控制
    856. 括号的分数
    376. 摆动序列(贪心算法)
    XGBoost 安装方法
    1405. 最长快乐字符串(贪心算法)
    1296. 划分数组为连续数字的集合(贪心算法)
    1353. 最多可以参加的会议数目(贪心算法)
    435. 无重叠区间(贪心算法)
    Array-数组-数据结构
    认识Redis和安装
  • 原文地址:https://www.cnblogs.com/wanhongnan/p/5775640.html
Copyright © 2020-2023  润新知