PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
C_and_CPP
[問題] begin和end
作者:
parkko
(薄荷)
2014-08-31 16:06:41
大家好~
我想請問一個問題
int ia[10]={1,2,3,4,5,6,7,8,9,10};
int ib[3]={1,3,8};
begin(ia);
和vector <int> ia;
ia.begin()的差異在於哪呢?
發現 built in type 僅可以使用 begin(ia)
但是STL的型態 則兩者都可以用
不曉得差異在於哪呢?
想GOOGLE,但連關鍵字都不會下>_<
謝謝大家
作者:
kerwinhui
(kezza)
2014-08-31 16:22:00
你的思意是 std::begin(ia) 和 std::end(ia) 吧?記憶中C++11 begin(foo)只會叫foo.begin(),end也一樣
作者:
Feis
(永遠睡不著 @@)
2014-08-31 16:40:00
你的問題已經說明了大部分的答案. C-style array 無法用.為了讓寫泛型函式更簡單. 所以使用非成員函式
作者:
jackace
(inevitable......)
2014-08-31 16:46:00
c++11 std::begin()有為array[N]作overload不是只會begin
作者: firose (guest也是也是也是也是也)
2014-08-31 19:36:00
std::begin 是最泛化的
作者:
loveme00835
(髮箍)
2014-09-01 14:52:00
建議用 begin() end() 這樣對物件的操作一致,才不用在類似 generic programming 的情境下要為不同型態做特化,因為 ADL 的關係也可以允許你為自己寫的容器提供 begin() end()
作者:
parkko
(薄荷)
2014-09-01 14:59:00
感謝大家的回覆 >_<
繼續閱讀
Re: [問題] pointer to char位址的問題
kdok123
[問題] 請問大型的open source要怎麼起頭去看?
smilekerker
Re: [問題] pointer to char位址的問題
LPH66
[問題] pointer to char位址的問題
kdok123
[問題] call by reference
makuebx
[問題] 這該如何解釋
ez00220
[問題] pointer和link list的問題
kdok123
Fw: [分享] 在CentOS 7建置Clang編譯環境
zxvc
Re: [問題] 一個reference的問題
XX124188
Re: [問題] address的問題
kerwinhui
Links
booklink
Contact Us: admin [ a t ] ucptt.com