目前已知最長的學名為雙翅目水虻科(英语:Stratiomyidae)的Parastratiosphecomyia stratiosphecomyioides(英语:Parastratiosphecomyia stratiosphecomyioides),由42個字母組成,意思是「擁有近似黃蜂飛行姿態而接近水虻的」。最短的學名則分別為南蝠的 Ia io 和奇翼龍的 Yi qi,都僅有4個字母。
最初,为了避免交流障碍,所以采用欧洲中古时期通用的拉丁语作为学名。但是后来,学者开始使用其他语言来为生物命名学名(但学名词尾、语法仍符合命名法),使得生物的学名中包含了来自世界各种语言的词汇。如奇翼龍的 Yi qi、神兽属的Shenshou、仙兽属的Xianshou、寐龙属的Mei及其下物种寐龙的Mei long等词语来自中文。
^[Simpson, M. G. 2006. Plant Systematics. p. 571. MA: Elsevier-Academic Press.]:「Scientific name: A formal, universally accepted name, the rules and regulations of which (for plants, algae, fungi and organisms traditionally treated as such) are provided by the International Code of Botanical Nomenclature.」。
^车振明. 微生物学. 科学出版社. 2011年6月: 8頁. ISBN 978-7-03-031216-7 (中文(简体)).
^國際動物命名規約(第四版)。翻譯:于名振。審訂:邵廣昭、陳錦生、吳文哲、蕭旭峰。水產出版社. 2009年3月修訂二版. ISBN 957-8596-69-3.(繁体中文)
10
1
I have a function that searches a vector of iterators and returns the iterator if its names matches a string passed as an argument. koalaGraph::PVertex lookUpByName(std::string Name, std::vector<koalaGraph::PVertex>& Vertices) { for (size_t i = 0; i < Vertices.size(); i++) { if(Vertices[i]->info.name == Name) return Vertices[i]; } } My question is how can I implement this as a lambda, to use it in connection with std::find_if ? I'm trying this: std::vector<koalaGraph::PVertex> V; std::string Name; std::find_if(V.begin(), V.end(), [&Name]() {return Name == V->info.name;}) But it says that V an enclosing-function local variable cannot be referenced in a lambda body unless it is in the capture list.
...