c++ - Visual Studio 中的混合语言
问题描述
我想在 Visual Studio 2017 中创建一个混合语言程序。它将是 Fortran 和 C++ 的混合体,使用英特尔编译器编译。由于 Visual Studio 不接受混合语言的项目,我必须在同一个解决方案中创建一个 Fortran 项目和一个 C++ 项目。但我不想拥有任何 DLL,因此我希望将两个项目中的目标文件链接到一个可执行文件中。
有没有办法在 Visual Studio 中做到这一点?
解决方案
不需要DLL。使项目与主程序可执行,另一个是静态库。确保两个项目之间的运行时库选项相同(C++:代码生成,Fortran:库)。如果主程序是 Fortran,那么您唯一需要做的就是使 C++ 项目成为 Fortran 项目的“依赖项”。如果 C++ 为主,则将 Fortran 项目的 .lib 作为源文件添加到 C++ 项目中。
在 compiler_f\MixedLanguage 下的Intel Parallel Studio XE for Windows Sample Bundle中有两个工作的 C++-Fortran 示例
推荐阅读
- python - 如何隔离轮廓内的所有内容,对其进行缩放并测试与图像的相似性?
- snowflake-cloud-data-platform - 如何将数据从一个雪花实例迁移到另一个最佳性能选项?
- twilio - 可编程 SMS:通过 API 与 twilio.com/console 创建服务资源
- html - HTML 元素未在 Thymeleaf 条件元素中呈现
- android - PlayReady 的 AMediaDrm_getKeyRequest 中的 init 预期值
- java - 回收站视图未使用 notifyDataSetChanged() 更新;
- python - python字符串操作从字符串中获取名字姓氏和dob
- python - 如何在 python、PIL 和 imageio 中读取和写入 gif 似乎不起作用
- php - 是否所有的 php 脚本,甚至在不同的 iframe 中运行,都一个接一个地滚动,或者它们可以同时发生?
- c++ - 尝试使用 extern "C" 在 C 中调用 C++ 方法,得到“未定义引用”对象的链接器错误