C++编程基础(1)

来源:互联网 发布:朱梓骁郭敬明 知乎 编辑:程序博客网 时间:2024/06/14 04:26

一、目标

1. 培养正规、大气的编程习惯

2. 培养良好的基于对象编程习惯

  • 不含指针的类 (例如复数类)
  • 含指针的类 (例如字符串类)

3. 学习面向对象编程思维

  • 继承 (Inheritance)
  • 复合 (Composition)
  • 委托 (Delegation)

二、C++的历史与演进

1. C++的族谱图:

B语言(1969)——>C语言(1972)——>C++语言(1983)——>Java、C#…

2. C++的演化历史:

  • C++ 98 (1.0)
  • C++ 03 (TRl, Technical Report t)
  • C++ 11 (2.0)
  • C++ 14

3. C++的构成:

C++的构成:

4. 从C到C++的进化

  • 在C语言时代,数据与处理数据的方法是分开的:
FILE *fp;fp = fopen("mydata.dat", "r+");//......fseek(fp, 10L, 0);//...fread(cBuff, 16, 256, fp);//...fclose(fp);
  • C++的设计思想就是要通过一种类似struct的结构,在逻辑上将二者封装在一起。
ifstream ofs;ofs.open("test.txt");//......ofs>>temp;cout<<temp<<endl;
  • C++在逻辑上是将数据和处理数据的方法合二为一,对普通成员函数而言,在物理上是“铁打的函数,流水的对象”。

    C++与C的对照

三、C++参考书籍

1.语言方面:

  • 《C++ Primer 4th》, Stanley B. Lippman
  • 《The C++ Programming Language 4th》, Bjarne Stroustrup
  • 《Essential C++》, Stanley B. Lippman

2.经验方面:

  • 《C++面向对象高效编程(第2版)》, Kayshav Dattatri
  • 《Effective C++ 3rd》, Scott Meyers
  • 《More Effective C++》, Scott Meyers
  • 《C++沉思录》, Andrew Boeing&Barbar Moo

3.STL方面:

  • 《The C++ Standard Library 2rd》
  • 《STL源码剖析》, 侯捷

3.内部实现:

  • 《C++反汇编与逆向分析技术揭秘》, 钱林松
  • 《深度探索C++对象模型》, Stanley B. Lippman
0 0
原创粉丝点击