看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《wei115 (ㄎㄎ)》之銘言: : 最近自學想要寫一些比較好玩的東西,而看上了winAPI,雖然知道api是應用程式介面,但實際使用上和函式庫沒什麼區別,所以他是函式庫? : 但仔細想想,winAPI是程式要使用核心功能的介面,用函式庫好像沒辦法實現(?),所以是用已經編譯封裝好的程式,算是dll? : 還是兩者混合在一起用? : 如果是函式庫,那為什麼像opneCL和QT不叫API而叫函式庫? : 看了很多解釋還是搞不太懂API的概念 首先光是介面跟函式的定義就不一樣 這個部分你再自己多孤狗,說來話長先不多講 第一個部分你說錯了,API可以是函式庫 沒有什麼函式庫沒辦法實現API或兩者混合在一起用的說法 而函式庫廣義來說就是個函式的集合而已 但函式庫不一定就是API 今天你寫了一個函式庫FOR某種APP的功能控制 我們就可以叫這個函式庫為該APP的API,比方說WinAPI 函式庫跟API不在同一個層級 所以不會因為叫函式庫就不能叫API 你問openCL為什麼不叫API? openCL是API沒錯,維基上面也是寫API openCL表示:你才不是API,你全家都不是API API大部分都是一種函式庫, 所以你叫API或函式庫都可以, 只是大部分人不懂,別人習慣叫什麼就跟著叫 這就是你要問的為什麼大家不叫他API要叫他函式庫 至於QT層級又更高了,QT是一套開發框架 你所謂的QT函式庫只是QT的一部分而已 QT本身就包含一堆函式庫跟API 如果今天我說QT是一種IDE你可能又要混亂了 如果你只是自學好玩的話 這些東西就不用太在意,想要的功能作的出來就好了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.218.32.230 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1496972976.A.582.html
MOONRAKER: 不錯很厲害 看過以後更混亂 簡直是obfuscation大師 06/09 10:48
MOONRAKER: 佩服佩服 06/09 10:48
MOONY135: 我只能說這種回答 大概只能騙騙高中生以下 06/09 11:01
MOONY135: 覺得你好棒 好高深莫測 06/09 11:01
AWEN221: 不好意思我表達能力不好,要酸的話回一篇供我學習 謝謝 06/09 11:50
LPH66: 你這篇文章的問題在講了很多什麼是 API, 但沒講 API 是什麼 06/09 12:48
LPH66: 而這偏偏正是原 PO 最想問的事情 06/09 12:49
原 PO 最想問的事情是什麼?什麼又是原 PO 最想問的事情? 所以誰要來解釋一下API? ※ 編輯: AWEN221 (180.218.32.230), 06/09/2017 13:03:11
shadow0326: 什麼在二壘 06/09 17:08
CodingMan: 你講了一堆卻啥也沒講 06/09 22:02
AWEN221: 有什麼關係,可以騙騙高中生還有P幣拿 06/10 02:00
dragonrose: 看不懂... 06/10 19:40
CoNsTaR: 人家問你動物是什麼,你只舉例雞狗是動物 06/11 22:10
CoNsTaR: 那以後他遇到雞狗以外的東西還是不知道是不是動物 06/11 22:10
CoNsTaR: 幫 LPH 大大解釋 06/11 22:10