1:不能充分明确函数的分类
1):不能从整体和局部上对函数和数据结构进行划分,要做到大处着眼,小处着手;
2):对函数的分块功能不明确,对其应用理解不彻底。
例:在LK一个实践程序中,有这样一个延迟函数:
void setDelay(int d) {delay =d;}
在这里,自己一直都无法理解期延迟功能。为什么呢?因为这里不涉及延长的具体实现。其具体实现是在后面
if(delay>=0&&waitKey(delay)>=0){ waitKey(0);}
的语句中体现出来的。
在这里上面的函数,配合变量delay就很好地进行了一个函数的组合。但是这里的组合并没有具体的函数实现,其只是为后面的函数做好了铺垫,后面可以直接用。这应该是一种间接的整合方法,也是自己现在需要大力学习的地方。
2:类中构造函数的初始化
在定义对象的时候,首先要对对象分配空间。但是这里的分配空间和构造函数的初始化关系不大,因为对于一个类只要其中数据成员的类型已知,那么其大小就是可以已知的。但是有些是例外的,比如数组、类(这个会隐含的调用本身的构造函数)。
也就是说,在构造函数中,只要能够明确每个对象的大小就OK了,至于初始化是为了程序后面逻辑上的需要,不是强求的。