ข้ามไปที่เนื้อหาหลัก

เชื่อมโค้ดภาษา C++ กับภาษา D

มีสองวิธีดังนี้


วิธีที่ 1 สร้างไฟล์ .di ขึ้นมาสำหรับใช้เชื่อมโค้ดระหว่างภาษา C++ กับภาษา D
ไฟล์ a.c
int f(int a, int b){
    return a + b + 42;
}
สร้างไฟล์ a.di ขึ้นมา
extern (C):
int f(int, int);
สร้างไฟล์ภาษา D สำหรับเรียกใช้งานกับโค้ดภาษา C++
ไฟล์ b.d
import std.stdio;
import a;
void main(){
    writeln( f( 100, 1000) );
}
ทำการคอมไพล์ไฟล์ a.c
gcc -c a.c
คอมไพล์ไฟล์ b.d
dmd b.d a.o
ผลลัพธ์
1142
อ่านเพิ่มเติมได้ที่ http://dlang.org/cpp_interface.html

วิธีที่ 2 ใช้เครื่องมือแปลงโค้ด

เครื่องมือแปลงโค้ด
http://rainers.github.io/visuald/visuald/CppConversion.html
http://dlang.org/htod.html

slides: http://walterbright.com/cppint.pdf

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

สั่งให้ browse เปิดลิงค์ตามที่ต้องการในภาษา D

เราสามารถเขียนโปรแกรมสั่งงานให้ browse เปิดลิงค์ตามที่ต้องการในภาษา D ด้วยการ import ไลบรารี std.process เข้ามา

จัดการ Package และ Build โปรแกรมภาษา D ด้วย dub

dub เป็นเครื่องมือสำหรับใช้สร้างจัดการ Package และ Build โปรแกรมหรือไลบรารีต่าง ๆ ในภาษาดี (D lang)