C++基础

一、具备的基础

变量(variables):

类型(types):int,float,char,struct...

作用域(scope)

循环(loops):while,for

流程控制:if-else,switch-case

知道一个程序需要编译、连结才能被执行

知道如何编译和连接(如何建立一个可运行程序)

二、应当养成正规的、大气的编程习惯

以良好的方式编写C++ class

Object Based(基于对象):面对的是单一class的设计

  class without pointer members —— Complex

  class with pointer members —— String

Object Oriented(面向对象):面对的是多重class的设计,class和classes之间的关系

  继承(inheritacne)

  复合(composition)

  委托(delegation)

三、C++关于数据和函数

1.结构

   C++把数据和处理数据的函数包在一起,数据只有函数可以处理,其他人看不到,组成class。以class这一种形式,创建出很多对象来使用。

2.以Complex和String来举例

Complex不带指针

complex c1(2, 1);
complex c2;
complex* pc = new complex(0, 1);

  函数只有一份,数据有很多份。

 String带指针

string s1 ("Hello ");
string s2 ("World ");
string* ps = new string;

  string的字符其实是个指针,要靠这个指针指出去,在内存另外再去分配一块空间来放内容。

  s1-s4的大小,其实里面都只有一根指针。

 四、C++programs代码基本形式

 标准库用<>,引用自己写的用" "

五、Header(头文件)中的防卫式声明

  为什么这样写:引用各种头文件的时候,次序不应该产生影响。这段代码的意思是:告诉编译器,一进来,如果(ifndef)不曾定义过这个名词的话,(define)那么就把它定义出来,不会有重复的include动作。

 六、Header(头文件)的布局

 七、class的声明(declaration)

 八、class template(模板)简介

   例如complex,现在不要就把实部和虚部的类型写死,在前面写上T即可,告诉编译器现在还没有决定类型。

  注意要在class head之前写上

template<typename T>

 

posted @ 2023-08-27 22:00  Niiiinomiya  阅读(58)  评论(0编辑  收藏  举报