练习源码及最新更新详见my github
C vs C++,关于数据和函数
- [C vs C++,关于数据和函数]
- [complex,string]
Object Based(基于对象) vs. Object Oriented(面向对象)
- Object Based:面向的是单一class的设计
- Object Oriented:面向的是多重classes的设计,classes和classes之间的关系
我们的第一个C++程序
- Classes的两个经典分类:
- Class with pointer member(s)
complex - Class with pointer member(s)
string
- Class with pointer member(s)
C++ programs代码基本形式
- .h(header files)
- Classes Declaration(自己编写的头文件声明)
- .cpp
- 源码,程序实现部分
- .h(header file)
- 标准库Standard Library
- 延伸文件名(extension file name)不一定是.h或.cpp,也可能是.hpp或其他或甚至无延伸名。
Output,C++ vs. C
- cout
- printf
Header(头文件)中的防卫式声明
- complex.h
#ifndef __COMPLEX__
#define __COMPLEX__
....
#endif
Header(头文件)的布局
#ifndef __COMPLEX__
#define __COMPLEX__
//forward declarations(前置声明)
#include <cmath>
class ostream;
class complex;
complex&
__doapl (complex* ths, const complex& r)
//class declarations(类声明)
class complex
{
...
};
//class definition(类定义)
complex::function ...
#endif
class的声明(declaration)
- class head
- class body
参考示例
class template(模板)简介
- 点评
- 侯捷老师的讲述更为通俗易懂