Re: [問題] 將cpp程式包成.o檔,給予c主程式使用[已解決]
※ 引述《angleevil (邪月)》之銘言:
: 開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
: GCC, Linux
: 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
: 問題(Question):
: 因為公司想使用hash table的功能,
: 我在網路上搜尋一下c寫的hash table都沒有c++的map好用!
: 所以我打算把cpp的程式包成.o,讓c去使用(前輩很堅持要用c..)
就算堅持要用 c, 也可以使用 c++ compiler 來 compile,
那就可以用 std::map 了。
有用到什麼特別的部份無法用 c++ compiler compile c code 嗎?
我把
https://gist.github.com/3516034
稍微改了一下, 只有 map.cpp 才需要用 g++ 來 compile,
其他檔案都用 gcc compile,
參考看看, 我的平台可以正常執行。
main.out: main.o map.o
gcc main.o map.o -o main.out -lstdc++
main.o: main.c
gcc -c main.c -o main.o
map.o: map.cpp
g++ -c map.cpp -o map.o
clean:
rm -f *.o *.out
github source code:
https://github.com/descent/progs
c_use_cpp_class directory
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.184.177.9
※ 編輯: descent 來自: 111.184.177.9 (09/01 10:43)
→
09/02 00:18, , 1F
09/02 00:18, 1F
→
09/02 00:20, , 2F
09/02 00:20, 2F
→
09/02 00:21, , 3F
09/02 00:21, 3F
→
09/02 00:22, , 4F
09/02 00:22, 4F
→
09/02 00:23, , 5F
09/02 00:23, 5F
→
09/02 00:26, , 6F
09/02 00:26, 6F
→
09/02 00:29, , 7F
09/02 00:29, 7F
→
09/02 00:30, , 8F
09/02 00:30, 8F
我沒有想過可以用 c 來使用 c++ class library, 反之當然沒問題。
你的想法帶給我之前沒想過的東西。
就算我寫純 c, 我也大都使用 c++ compiler。
能通過 c++ compiler, 有很大機會在 c compiler 應該也沒問題。
推
09/02 00:56, , 9F
09/02 00:56, 9F
→
09/02 00:59, , 10F
09/02 00:59, 10F
thanks, fixed
※ 編輯: descent 來自: 111.184.177.9 (09/02 11:55)
→
09/02 13:04, , 11F
09/02 13:04, 11F
→
09/02 13:05, , 12F
09/02 13:05, 12F
→
09/02 13:07, , 13F
09/02 13:07, 13F
→
09/02 13:09, , 14F
09/02 13:09, 14F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):