精華區beta Programming 關於我們 聯絡資訊
※ 引述《JeffHung.bbs@ptt.cc (御風只配做笨木頭)》之銘言: > 建議寫一個 member function 如下: > template <class T> > class Array2D > { > public: > ... > T& at(size_t x, size_t y); > ... > }; > 而不要 overload []。 其實我看過的較佳實作方式, 是去 overload operator(), 也就是 T &operator()(size_t x, size_t y); 這樣就能直接以 (x, y) 存取內容, 至於 .at(x, y) 的功能一般是做成會 check boundary 的版本。 -- Name: Tseng, Ling-hua E-mail Address: uranus@it.muds.net School: National Tsing Hua University Department: Computer Science Interesting: C++, Compiler, PL/PD, OS, VM, Large-scale software design Researching: Software pipelining for VLIW architectures Homepage: https://it.muds.net/~uranus -- ╔═══╗ ┼────────────────────────╮ 狂狷 Origin:[ 狂 狷 年 少 ] whshs.cs.nccu.edu.tw ╰─╮ 年少 ┼╮ < IP:140.119.164.252 > ╰─╮ ╚╦═╦╝ From:61-230-217-190.dynamic.hinet.net ─╨─╨─ KGBBS 遨翔"BBS"的狂狷不馴;屬於年少的輕狂色彩