zoukankan      html  css  js  c++  java
  • 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

          运行成功。

    作者:宛宏南

  • 相关阅读:
    Java 时钟
    mybatis中的#和$的区别
    vuex数据管理-数据共享
    vuex数据管理-数据适配
    vue双向数据绑定原理
    基于VUE的SPA单页应用开发-加载性能篇
    vue2.0读书笔记3
    移动端软键盘收起监听
    移动端模态窗口的滚动和橡皮筋问题解决方案
    window.history的跳转实质-HTML5 history API 解析
  • 原文地址:https://www.cnblogs.com/wanhongnan/p/5775640.html
Copyright © 2011-2022 走看看