281654814

 

两周的学习

     学习一定要定期总结,只有总结才知道学了什么,学到了什么,还有什么要学,这是规划。
      近两周的程序打得少了一些,看的多了一些,《高质量编程》第八章,《使用UNIX编程》大概看了一百页,发现还真是不错,可读性很强,比apue强多了,也不能太最求经典,至少入门的时候还是要找个自己适合的书看。还有c trap and pitfalls,今天刚看了30页,也是一本好书,我这周要把它看完一遍。要看的还真多,林瑞的好好好看完,unix好好练一下awk,sed,grep等等,还有一定要把IPC这块弄明白。这是近期的工作。
      
      ok,总结一下第八章和第九章。

      1.  隐式类型转换会是重载函数产生二义性。

      2. 成员函数重载的条件:相同的范围,相同的函数名,不同的参数表,virtual无关。
          覆盖的特性:覆盖是派生类覆盖基类;范围不同,函数名相同,参数表相同,基类函数必须virtual。
          派生类函数隐藏基类函数的条件:函数同名,但参数不同,virtual无关,基类函数被隐藏。
                                                                      函数同名,参数相同,基类无virtual,基类函数被隐藏。
      
      3. 运算符重载:

运算符

规则

  所有的一元运算符

建议重载为成员函数

  = () [] ->

只能重载为成员函数

  +=  -=  /=  *=  &=  |=  ~=  %=  >>=  <<=

建议重载为成员函数

  所有其它运算符

建议重载为全局函数

 
     4. inline是一种“用于实现的关键字”,而不是“用于声明的关键字”。

      第九章:
      5. 缺省的“拷贝构造函数”和“赋值函数”均采用“位拷贝”,而非“值拷贝”,如果类中含有指针必将出错。
      6. 初始化表。派生类一定要在初始化表中调用基类的cf,const变量只能在il中初始化,变量在il中效率更高
(非内部数据类型)。
      7. 拷贝cf和赋值cf的区别:赋值就是重载=,还有赋值是针对已存在的对象,拷贝是初始化时用的,注意,拷贝cf也可使用=,但是建议使用()。
      

posted on 2009-09-22 22:47 menglailai 阅读(60) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航:   博客园   博客园最新博文   博问   管理


导航

统计

常用链接

留言簿

文章档案

搜索

最新评论