[討論] 有沒有推薦的跨平台 socket

看板C_and_CPP作者 (mingtsay〃小喵)時間11年前 (2013/05/20 03:35), 編輯推噓6(6011)
留言17則, 12人參與, 最新討論串1/1
最近想寫個可以建立網路連線的程式 不過我希望能夠在不改變控制連線程式碼的狀態下完成跨Windows和Linux 意思是說希望透過inclue不同平台的連線程式碼 (或是include同一個檔案並透過ifdef處理各平台特殊用法) 有沒有人有研究過這類的實做? 還是其實Windows和Linux是一樣的? ===== 整理 ===== (2013/05/20 21:13) 1. boost.asio 2. ZeroMQ 3. qt network module -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 101.12.90.230

05/20 05:24, , 1F
boost 好像有,不過沒用過...
05/20 05:24, 1F

05/20 05:46, , 2F
winsock2與UNIX的socket本值上是完全一樣的 只是名要改下
05/20 05:46, 2F

05/20 05:47, , 3F
只是有些名要改一下...好比 close->clocesocket..
05/20 05:47, 3F

05/20 10:33, , 4F
ACE boost.asio 其它忘了
05/20 10:33, 4F

05/20 10:35, , 5F
用 boost.asio 就對了 qq
05/20 10:35, 5F

05/20 11:21, , 6F
當然是boost.asio
05/20 11:21, 6F

05/20 13:19, , 7F
可是boost::asio的命名讓人很蛋疼 XD
05/20 13:19, 7F

05/20 13:25, , 8F
推boost.asio
05/20 13:25, 8F

05/20 20:09, , 9F
ZeroMQ
05/20 20:09, 9F
※ 編輯: a60301 來自: 118.160.157.72 (05/20 21:13)

05/20 21:45, , 10F
總是會需要再包一層,在該層之下用define分成不同平台,
05/20 21:45, 10F

05/20 21:46, , 11F
該層之上就不分平台,共用相同介面,這就是跨平台
05/20 21:46, 11F

05/20 21:57, , 12F
要寫很簡單, 懶得寫就用boost.asio
05/20 21:57, 12F

05/21 00:28, , 13F
推boost.asio
05/21 00:28, 13F

05/21 01:48, , 14F
qt network module
05/21 01:48, 14F
※ 編輯: a60301 來自: 114.34.74.8 (05/22 09:20)

05/22 11:14, , 15F
message queue的層級不一樣吧,Qt 則是包山包海XD
05/22 11:14, 15F

05/22 11:14, , 16F
而且原 PO 直接忽略 ACE...
05/22 11:14, 16F

05/22 11:21, , 17F
ACE 太高深了
05/22 11:21, 17F
文章代碼(AID): #1HcIcUAj (C_and_CPP)