C iterator(1) 幾個輔助函式

2021-10-04 01:38:01 字數 2321 閱讀 5152

一 簡介

標頭檔案1. std::advance

增加迭代器it n個元素的步長

template< class inputit, class distance >

void advance( inputit& it, distance n );(until c++17)

template< class inputit, class distance >

constexpr void advance( inputit& it, distance n ); (since c++17)

2. std::distance返回迭代器 first 到 last 的 路程(可正可負)

template< class inputit >

typename std::iterator_traits::difference_type

distance( inputit first, inputit last ); (until c++17)

template< class inputit >

constexpr typename std::iterator_traits::difference_type

distance( inputit first, inputit last ); (since c++17)

3. std::next(c++11)返回 it 後第n個迭代器

template< class forwardit >

forwardit next(

forwardit it,

typename std::iterator_traits::difference_type n = 1 ); (since c++11) (until c++17)

template< class inputit >

constexpr inputit next(

inputit it,

typename std::iterator_traits::difference_type n = 1 ); (since c++17)

4. std::prev (c++11)返回 it 前第n個迭代器

template< class bidirit >

bidirit prev(

bidirit it,

typename std::iterator_traits::difference_type n = 1 ); (since c++11) (until c++17)

template< class bidirit >

constexpr bidirit prev(

bidirit it,

typename std::iterator_traits::difference_type n = 1 ); (since c++17)

二 例子

#include #include // next prev distance advance

#include int main() ;

auto it = vc.begin();

// std::next

it = std::next(it, 7);

it = std::next(it, -1);

// std::prev

it = std::prev(it, 1);

it = std::prev(it, -1);

// std::distance

std::distance(it, vc.end());

std::distance(it, vc.begin());

// std::advance

std::advance(it, 1);

std::advance(it, -1);

} std::cin.get();

return 0;

}

加上cout輸出後的結果:

三 參考

std::advance

std::distance

std::next

std::prev

相機標定1 幾個函式

相機標定中的幾個函式 stereocalibrate double cv stereocalibrate inputarrayofarrays objectpoints,表示物點座標,由棋盤格生成的,z 0.inputarrayofarrays imagepoints1,相機1中的像點座標 inpu...

Web學習筆記1 幾個名詞

2 wsgi,即web server gateway inte ce,用於掩蓋底層的http協議 讓程式設計師專注於上層。可以使用wsgi來啟動伺服器,編寫相應處理函式等。3 web 框架,建立在wsgi基礎上,進一步簡化,能夠針對使用者的請求更加方便的編寫處理函式,同時框架自身可能也包含了伺服器。...

PG常用的幾個查詢(1)

select version 檢視pg版本 select current database 檢視當前資料庫 select current user 檢視當前使用者 psql c select version 執行單條sql命令 psql f x.sql 可以把多條命令寫入檔案,用 f執行 selec...