美文网首页
lxidea的 Boolan C++面向对象高级编程(上)学习笔

lxidea的 Boolan C++面向对象高级编程(上)学习笔

作者: lxidea | 来源:发表于2018-03-26 09:39 被阅读0次

    以前自学过C++的时候,是用的C++ Prime那本教材。学的时候也把所有习题都做过一遍,当时的基础是曾经学过BASIC,C,Fortran,用过Pascal,C#,有BASIC二级计算机证书和三级计算机网络上机优秀成绩。

    这次决定要系统学习一下,掌握今后独立开发大型面向对象C++程序和平台的能力。毕竟,今后需要从事的行业是计算密集型的,因此对C++这种面向对象的语言是喜忧参半。C++能高效率的对要编码完成的任务进行抽象,最后的主程序代码异常简单;但总有人说它对科学计算方面有部分效率不高对问题。这次希望能够把这块补上。

    第一周的学习主要是C++的基础部分,包括C++的身世和它最主要的特性,class。在第一周的学习中,主要内容是不包含指针的类。这种类不需要考虑在构造函数中分配内存,也不需要在析构函数中释放内存。因此主要需要注意的就是使用初始列对类的成员变量进行初始化。这个是衡量一个C++类设计是否大气的重要指标:)。

    一般的,C++类设计应该符合以下要求:

    1. 成员变量是私有的,保护起来
    2. 构造函数和供外部调用的成员函数是公开的。(除了Singleton设计模式下,类的构造函数设计为私有,类可以控制自身的初始化过程,从而可以控制整个程序中类的实例化数量)
    3. 构造函数参数可选,因而可以匹配更多调用形式
    4. 操作符重载,对std::ostream的重载可以方便的打印出类的内容,当然,其实不仅仅是std::cout可以使用,std::fstream也是可以的。因此,也能用于输出到文件中
    5. 函数的返回和函数的调用,在能够传递引用的时候就不传值,这样速度比较快(局部变量在return的时候只能传值,不能传引用)
    6. 操作符重载的时候,也要根据使用者可能会采用的使用方式,返回合适的引用

    相关文章

      网友评论

          本文标题:lxidea的 Boolan C++面向对象高级编程(上)学习笔

          本文链接:https://www.haomeiwen.com/subject/ouelcftx.html