[討論] 作為其他語言的延伸套件,C/C++何者較佳?

看板C_and_CPP作者 (Neisseria)時間9年前 (2015/05/22 00:01), 編輯推噓1(1011)
留言12則, 4人參與, 最新討論串1/1
很多的語言,像是 Perl, Python, Ruby 或者 R 都可以用 C 或 C++ 做為套件的延伸語言 會提到這個也是有一些個人的因素 小弟我 C 和 C++ 只學了些基礎,後來也很少碰 大部分都在寫一些 script language, e.g. Ruby 但是有機會還是想重學 C 或 C++ 雖然不是重頭到尾都改用 C 或 C++ 寫東西 但是也想過將 C 或 C++ 和這些 script languages 結合在一起 如果是用來搭配其他語言的套件或模組 學習 C 或 C++ 何者較優呢? Stackoverflow 上比較推薦 C 做為多語言的套件的共通語言 (可見 http://bit.ly/1c7pVj0) 不過,還是問問看各位大大的意見 感謝各位的回答 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.182.128.186 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1432224091.A.9E6.html

05/22 00:03, , 1F
我覺得C 和C++在寫script languages上是 C++包含C的關係
05/22 00:03, 1F

05/22 00:04, , 2F
C++可以讓你寫擴充的時候語法更簡潔,但是有時候還是要用
05/22 00:04, 2F

05/22 00:05, , 3F
C的API功能才會夠齊全。例如我在寫Rcpp(R的擴充)時,有
05/22 00:05, 3F

05/22 00:06, , 4F
想最快直接拿到字串的方式還是透過C的API。
05/22 00:06, 4F

05/22 00:07, , 5F
如果想寫的好,建議先學C,然後應需求再跟著學C++
05/22 00:07, 5F

05/22 00:27, , 6F
之前寫過Ruby擴充 使用C++再extern成C很方便
05/22 00:27, 6F

05/22 00:28, , 7F
至少C++有很多內建的函式庫 光這一點就贏了
05/22 00:28, 7F

05/22 09:48, , 8F
終極目的是和其他語言合作的話 C 比較好, C++ 的可攜性
05/22 09:48, 8F

05/22 09:50, , 9F
比較差, 還有 ABI 問題
05/22 09:50, 9F

05/22 13:08, , 10F
其實寫一組C function 包好extern C出去
05/22 13:08, 10F

05/22 13:09, , 11F
在我看過的場合還沒發生過問題就是... XD
05/22 13:09, 11F

05/22 13:09, , 12F
唯一出過包的就是對方目標機器沒有libc++
05/22 13:09, 12F
文章代碼(AID): #1LNW5Rdc (C_and_CPP)