typing
2013-09-16 18:22:22 +08:00
这是练习作品么?
有一些建议:
1. 复杂度. 目前是O(n), 试试看能不能更快.
2. 有时候operator[]只是提领操作, 尤其对于const dict. 所以operator[]是不是提供一个const版本更好.
3. (这一点我也不太清楚, 需要你自己查证) 一般来说.h里面的函数都要inline, 有两种方法可以达到:
直接在class体内定义; 或者自己手动加inline.
目前这样子会导致函数重复定义(在.h包含多次的情况下)
4. 承接上一条. 一般.h头部需要加上#ifdef那样的预编译指令, 防治多次包含的情况.
5. assignment operator 一般都会返回一个const reference. 这只是惯例, 并不是错误.
6. 我想你需要写一些注释来阐明你对拷贝所使用的策略.(deep or shallow, reference or hold)
7. 你可以看看STL中map的写法, 会有很大帮助.