作者bulls5566 (公牛5566)
看板C_and_CPP
標題[問題] comparator有[ ]
時間Thu May 3 11:18:17 2018
開發平台(Platform): (Ex: Win10, Linux, ...)
Mac Seirra
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
GCC 6.2.0
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
none
問題(Question):
IORequest* SSTF::get_iorequest(int curr_track)
{
if (q.empty())
return nullptr;
auto it = min_element(
q.begin(),
q.end(),
[curr_track](const IORequest* a, const IORequest* b)
{ return abs(a->track - curr_track) < abs(b->track - curr_track); }
);
IORequest* tmp = *it;
q.erase(it);
return tmp;
}
我最近在學c++,在學queue, 觀摩別人的程式發現min_element的comparator用了一個中括號
想知道中括號開頭之後是什麼意思,謝謝
我猜是要return curr_track這個int
但不太確定
想請教這邊的高手替小弟解惑
感恩
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 98.109.145.252
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1525317499.A.2F1.html
推 fatrabitree: lambda 05/03 11:25
→ bulls5566: 請問一下 curr_track放進去跟沒放的差別在於哪裡呢? 05/03 11:28
→ djshen: 先了解syntax吧 05/03 11:57
→ KanzakiHAria: expressions-in-cpp 05/03 12:37
推 steve1012: 那叫capture list 讓你傳變數進去的 05/03 23:23