zoukankan      html  css  js  c++  java
  • C++ 知识点总结复习

    C++

    1、C++是静态类型语言,使用静态类型的编程语言是在编译时执行类型检查,而不是在运行时执行类型检查。

    2、面向对象程序设计

    C++ 完全支持面向对象的程序设计,包括面向对象开发的四大特性:

    • 封装
    • 抽象
    • 继承
    • 多态

    3、基础语法

     a.C++ 是区分大小写的编程语言

     b.三字符组就是用于表示另一个字符的三个字符序列,又称为三字符序列。三字符序列总是以两个问号开头。三字符序列可以出现在任何地方,包括字符串、字符序列、注释和预处理指令。

    // 变量声明
    extern int a, b;
    extern int c;
    extern float f;
      
    int main ()
    {
      // 变量定义
      int a, b;
      int c;
      float f;
     
      // 实际初始化
      a = 10;
      b = 20;
      c = a + b;
     
      cout << c << endl ;
     
      f = 70.0/3.0;
      cout << f << endl ;
    
    —变量作用域
    //⚠️ 全局变量可以和局部变量名相同,但在函数内,局部会覆盖全局变量
    #include <iostream>
    
    using namespace std;
    //全局的变量
    int c,d;
    
    void bianliang(void);
    
    int main(int argc, const char * argv[]) {
        
        //函数内的变量
        int a,b;
        
        a = 10;
        b = 13;
        cout << a+b;
        
        
        bianliang();
        c = d +1;
        
        cout << c;
        
          return 0;
    }
    
    
    void bianliang(void){
        
        c = 13;
        d = c + 5;
        
        
        
    }
    变量
    —整数常量
    //⚠️ 
    整数常量:也可以带一个后缀,后缀是 U 和 L 的组合,U 表示无符号整数(unsigned)
    L表示长整数(long)。后缀可以是大写,也可以是小写,U 和 L 的顺序任意。
    
    浮点常量:210f          // 非法的:没有小数或指数、
    
    布尔值常量:布尔常量布尔常量共有两个,它们都是标准的 C++ 关键字:
    true 值代表真。false 值代表假。
    
    //常量定义:在 C++ 中,有两种简单的定义常量的方式:
    使用 #define 预处理器。
    使用 const 关键字。
    /*宏定义 #define 和常量 const 的区别
     类型和安全检查不同
     宏定义是字符替换,没有数据类型的区别,同时这种替换没有类型安全检查,可能产生边际效应等错误;
     const常量是常量的声明,有类型区别,需要在编译阶段进行类型检查
     编译器处理不同
     宏定义是一个"编译时"概念,在预处理阶段展开,不能对宏定义进行调试,生命周期结束与编译时期;
     const常量是一个"运行时"概念,在程序运行使用,类似于一个只读行数据
     存储方式不同
     宏定义是直接替换,不会分配内存,存储与程序的代码段中;
     const常量需要进行内存分配,存储与程序的数据段中*/
    常量
    //宏定义在头部 或者 函数内。在全局都有效
    
    —函数
    Lambda 函数与表达式
    C++11 提供了对匿名函数的支持,称为 Lambda 函数(也叫 Lambda 表达式)。
    Lambda 表达式把函数看作对象。Lambda 表达式可以像对象一样使用,比如可以将它们赋给变量和作为参数传递,还可以像函数一样对其求值。
    [函数对象参数] (操作符重载函数参数) mutable或exception声明 -> 返回值类型 {函数体}
    C++11 lambda 表达式解析
    
    
    —数组
    #include <iomanip>
    using std::setw;
    
    cout<<245667<<setw(15)<<33<<endl;
    
    输出:245667             33。 ,带有空格的输出
    
    ——字符串
    序号    函数 & 目的
    1    strcpy(s1, s2);
    复制字符串 s2 到字符串 s1。
    2    strcat(s1, s2);
    连接字符串 s2 到字符串 s1 的末尾。
    3    strlen(s1);
    返回字符串 s1 的长度。
    4    strcmp(s1, s2);
    如果 s1 和 s2 是相同的,则返回 0;如果 s1<s2 则返回小于 0;如果 s1>s2 则返回大于 05    strchr(s1, ch);
    返回一个指针,指向字符串 s1 中字符 ch 的第一次出现的位置。
    6    strstr(s1, s2);
    返回一个指针,指向字符串 s1 中字符串 s2 的第一次出现的位置。
    
    C++ 日期 & 时间http://www.runoob.com/cplusplus/cpp-date-time.html
    
    // 输出流
        char name[23];
        int age;
        cout <<"请输入你的名字";
        //输入
        cin >> name >> age;
        
        //输出
        cout << name<<age;
        
        cerr<<"错误流";
        
        clog << "日志流";
        
        
    函数、数组、输入输出

     C++高级教程

     
  • 相关阅读:
    Code Forces 650 C Table Compression(并查集)
    Code Forces 645B Mischievous Mess Makers
    POJ 3735 Training little cats(矩阵快速幂)
    POJ 3233 Matrix Power Series(矩阵快速幂)
    PAT 1026 Table Tennis (30)
    ZOJ 3609 Modular Inverse
    Java实现 LeetCode 746 使用最小花费爬楼梯(递推)
    Java实现 LeetCode 745 前缀和后缀搜索(使用Hash代替字典树)
    Java实现 LeetCode 745 前缀和后缀搜索(使用Hash代替字典树)
    Java实现 LeetCode 745 前缀和后缀搜索(使用Hash代替字典树)
  • 原文地址:https://www.cnblogs.com/xujiahui/p/7055426.html
Copyright © 2011-2022 走看看