首页 > 技术文章 > C++基础知识总结(一)

fengkungui 2016-10-17 08:39 原文

  1. C++程序以.cpp作为文件扩展名。
  2. C++标准输入输出库的头文件是iostream,在程序中使用:#include <iostream>//包含头文件
  3. C++使用命名空间:using namespace std;
  4. 对象的定义及初始化:int z(0)//等价int z=0
  5. 用关键字const修饰的标识符是一类特殊的常量,成为符号常量。因为被const修饰的变量的值在程序中不能改变,所以在声明符号常量时,必须对符号常量进行初始化,除非这个变量是用extern修饰的外部变量。例如:const int i=8extern const int d
  6. 函数重载:为同一个函数定义几个版本,从而使一个函数名具有多种功能。
  7. 字符长度:int 4个字节   整数常量类型:十进制、长整型(后缀Ll)、八进制(前缀为零)、十六进制(前缀为0x
  8. 动态分配内存:new 类型名[size]//申请可以存储size个该数据类型的对象。
  9. 引用:数据类型 &别名=对象名 需要注意:不能声明数组的引用,也不可以声明引用的引用,可以声明对指针的引用(int * &p1=p2)和指向引用的指针(例如:int *p=&a是正确的).但是int *&p=&a是错误的。
  10. 对指针使用const限定符(强制改变访问权限)
    1. 指向常量的指针:const int *p//*p是个常量,不能将*p走位左值进行操作
    2. 指针常量int *const p//在整个生存周期内其值是不会改变的。
    3. 指向常量的常量指针:const int *const p//必须赋初始值(eg.int x=3;const int *const p=&x;)
  11. 泛型算法:提供的操作与元素的类型无关。
  12. 查找数组内容:find(a,a+lenvalue);//该函数返回位置指针。
  13. 设置显示小数的位数(setprecision)
  14. C++类默认为private
  15. 面向过程就是不必了解计算机的内部逻辑,而把精力主要集中在对如何求解问题的算法逻辑和过程的描述上。
  16. 函数,就是模块的基本单位,是对处理问题的抽象。
  17. 结构化程序设计使用的功能抽象,面向对象程序设计不仅能进行功能抽象,而且能进行数据的抽象。
  18. 对象描述的三要素:对象名、属性、操作
  19. C++规定字符串的计数是从0开始的。对象名.find(要查找的字符串,开始查找的位置)//函数返回查找到的字符串在主串的位置。找不到的时候返回-1
  20. C++标准程序库提供complex类定义复数对象。在程序中包含这个类的头文件:#include<complex>
  21. 函数的参数及其传递方式
    1. 对象作为函数参数:是将实参对象的值传递给形参对象,这种传递是单向的。(传对象不会改变原来对象数据成员值)
    2. 对象指针作为函数参数,形参是对象的指针,实参是对象的地址。
    3. 引用作为函数参数。实参对象和形参对象代表同一个对象,所以改变形参对象的值就是改变实参对象的值。

 

  1. const修饰传递参数,意思是通知函数,它只能使用参数而无权修改它。这主要是为了提高系统的自身安全。
  2. 函数返回值可以是除数组和函数以外的任何类型。
    1. 返回引用的函数(目的是将该函数用在赋值运算符的左边。
    2. 返回指针的函数
    3. 返回对象的函数
  3. 除具有循环语句、switch语句的函数不能说明为内联函数外,其它函数都可以说明为内联函数。使用内联函数能加快程序执行速度。
  4. 在类中声明的任何成员不能使用externantoregister关键字进行修饰。
  5. 定义成员函数

返回类型 类名::成员函数名(参数列表)

{

成员函数的函数体//内部实现

}

  1. 类对象的指针可以通过—>运算符访问对象的成员
  1. 在定义析构函数时,不能指定任何返回类型,即使指定void返回类型也不行,析构函数也不能指定参数,但是可以显示地说明参数为void
  1. 复制构造函数:用已有的对象来创建新的对象。A::A(const A &)

推荐阅读