[問題] C#同時有zero-based和one-based list?

作者: shadow0326 (非議)   2017-05-22 15:45:58
之前寫c/c++, python比較多
最近初學C#,遇到了一些困擾的問題
首先第一個疑惑就是為什麼C#同時存在zero-based和one-based的list設計呢?
naive array和大部分語言一樣是zero-based
但是大部分API返回的list是one-based (例如Outlook.Application.Session.Folders)
同時存在 0~n-1 以及 1~n 兩種list,不是很難維護嗎?
作者: anumis (阿努米斯)   2017-05-22 16:36:00
.net 本身是zero,但延伸出來的api就不一定了,要看開發者當時的想法
作者: ssccg (23)   2017-05-22 19:57:00
Office是VB/COM時代的東西,.NET的API只是個wrapper吧原本就是.NET的東西全部都是0-based應該說這問題是屬於VB的,VB Collection是1-based,array甚至可以任意決定index
作者: shadow0326 (非議)   2017-05-22 21:16:00
原來如此 可能我開始接觸都是寫office plugin 才感覺一直碰到one-based

Links booklink

Contact Us: admin [ a t ] ucptt.com