binary_search()在c++中找到的用法有兩種:
第一種是拷貝容器
a.原型如下:
template<
class
_init
,class
_outit
> inline
_outit copy
(_init _first, _init _last,
_outit _dest)
b. 函式原型:
copy(vector1.begin(), vector1.end(), back_inserter(vector2))
c. 引數說明:
第二種拷貝在迭代器指定位置:
a.原型如下:
#if _iterator_debug_array_overloads
template<
class
_init
,class
_outty
, size_t _outsize> inline
_outty *
copy
(_init _first, _init _last,
_outty
(&_dest)
[_outsize]
) #endif /* _iterator_debug_array_overloads */
b.函式原型:
copy(vector1.begin(), vector1.end(), vector2[x]);
c.引數說明:
d.函式功能:主要用於拷貝迭代器的位置
例子如下:
#include
#include
#include
//back_inserter所需要的標頭檔案
using namespace std;
void
main()
; vec2.
reserve
(vec1.
size()
);//儲存vec1的大小
copy
(vec1.
begin()
, vec1.
end(),
back_inserter
(vec2));
//進行拷貝
cout <<
"vec1.size() = "
<< vec1.
size()
<< endl;
//輸出vec1的大小
cout <<
"vec1.capacity() = "
<< vec1.
capacity()
<< endl;
//輸出vec1的容量
cout <<
"vec1: "
;for
(vector
::const_iterator iter = vec1.
begin()
; iter < vec1.
end();
++iter)
cout << endl;
cout <<
"vec2.size() = "
<< vec2.
size()
<< endl;
//輸出vec2的大小
cout <<
"vec2.capacity() = "
<< vec2.
capacity()
<< endl;
//輸出vec2的容量
cout <<
"vec2: "
;for
(vector
::const_iterator iter = vec2.
begin()
; iter < vec2.
end();
++iter)
cout << endl;
}
C STL演算法系列6 copy函式
現在我們來看看變易演算法。所謂變易演算法 mutating algorithms 就是一組能夠修改容器元素資料的模板函式,可進行序列資料的複製,變換等。我們現在來看看第乙個變易演算法 元素複製演算法copy。該演算法主要用於容器之間元素的拷貝,即將迭代器區間 first,last 的元素複製到由複製...
C STL演算法系列6 copy函式
現在我們來看看變易演算法。所謂變易演算法 mutating algorithms 就是一組能夠修改容器元素資料的模板函式,可進行序列資料的複製,變換等。我們現在來看看第乙個變易演算法 元素複製演算法copy。該演算法主要用於容器之間元素的拷貝,即將迭代器區間 first,last 的元素複製到由複製...
C STL 演算法另類使用方法
很多時候我們希望在乙個 vector 或者 list 或者什麼其他東西裡面,找到乙個值在哪個位置,這個時候 find 幫不上忙,而有人就轉而求助手寫迴圈了,而且是原始的手寫迴圈 for int i 0 i vect.size i if vect i value break 如果編譯器把 i 看作 f...