1. foo(const Node* node)
对象指针调用attribute是->, 不是.
用指针的好处: 对象结构很大时节省内存,不用在分配副本
2. 函数记得写返回值
3. 自己写test cases, try corner cases eg: 0, NULL ...
4. LNK 2005 error: XXX already defined in ***.obj
原因:头文件重复包含,用#ifndef ... #define ... #endif 设定头文件
调用库时有重复定义的函数或者变量,使用inline 或者static告诉编译器只编译和链接此一个副本