• c++学习


    c++的主要特性 封装继承多态抽象

    标准库:
    核心语言 包括构件块 变量 数据类型和常量
    c++标准库
    stl模板库 提供大量的方法 用于操作数据结构

    为了保证c++的便携性 使代码在所有平台都能够编译 所有厂商都是用ansi标准

    适用领域:数学和研究 用于编写驱动程序和其他实时性操作的软件 winos系统底层是使用c++编写的。

    标准化:
    2015年 c++第四个标准文件

    c++文件和流环境
    编译器和文本编辑器。

    编译c++ 使用g++.exe工具

    x=y;
    y=y+1;
    add(x,y)

    分号是语句的结束 表明一个逻辑实体的结束

    c++变量类型
    该范围内的值都会存储在内存中 运算符可以应用于变量上

    变量由字母数字和下划线字符组成

    bool 存储值true或者false
    char 一个八位字节 这是一个整数类型
    int 机械最小的自然数
    float 单精度 1 8 23 位小数 双精度 52位小数
    void 类型缺失
    wchar_t 宽字符类型
    其他的 枚举指针 引用类 数据结构

    c++中变量定义
    type valiable_list
    int i, j, k;
    char c, ch;
    float f, salary;
    double d;

    函数调用:

    左值和右值
    int g=20;
    10=20; 报错

    c++变量作用域
    局部变量
    形式参数
    全局变量

    在一个函数声名 叫做局部变量

    c++常量 常量是固定值 在执行期间不可以改变 这固定的值叫做字面量 。
    常量可以是任意类型。
    常量就像是常规的变量,只不过常量的值在定义后不能进行修改。

    字符常量的方法
    预处理器
    使用const关键词

    define identifier value

    限定符
    const 程序在执行期间不能改变
    volatile 修饰符告诉不需要声名变量 直接从内存读取
    restrict 指针是唯一的访问方式 c99

    c++存储
    存储类型定义了变量可见性和生命周期。
    auto
    register
    static
    extern
    mutable
    thread_local (C++11)

    //c11开始 register被弃用

    extern存储全局变量的引用 随处可见 使用extern时 对于无法初始化的变量 会指向之前存储的位置

    每一个变量都有自己的变量副本

    运算符
    算术
    关系
    逻辑
    位运算符
    赋值运算
    杂项运算

    运算符 描述 实例
    & 如果同时存在于两个操作数中,二进制 AND 运算符复制一位到结果中。

    | 如果存在于任一操作数中,二进制 OR 运算符复制一位到结果中。

    ^ 如果存在于其中一个操作数中但不同时存在于两个操作数中,二进制异或运算符复制一位到结果中。

    ~ 二进制补码运算符是一元运算符,具有"翻转"位效果,即0变成1,1变成0。

    << 二进制左移运算符。左操作数的值向左移动右操作数指定的位数。

    二进制右移运算符。左操作数的值向右移动右操作数指定的位数。

    循环:
    无限循环
    for(;;)常用这个来表示

    函数
    值引用 把实际的值传给函数的形式参数 内存释放 值消失
    指针引用 把地址传给参数
    引用调用 修改形式参数会影响实际参数

    默认时值引用。未指定会使用默认值。

    c++数组
    指定元素的类型和数量
    数组时很重要的 下面列出了一些数组相关的重要概念。

    c++字符串
    c风格字符串
    c++引入的string类类型

    c++中的string类
    c++标准库提供了string类型 另外还增加了其他更多的功能。

    c++指针
    如果没有指针 没有动态内存分配 这是无法执行的。 所以想要成为一个优秀的程序员。 学习指针时很有必要的。
    表示内存地址的长的十六进制数。

    c++引用
    他是一个已经存在变量的另一个名字。一旦把初始值为某个变量,就可以引用该名称或者变量名称。
    不存在空引用
    一旦引用被初始化为一个对象 就不能被指向另一个对象。 指针可以在任何时候指向另一个对象。
    引用必须在创建时初始化 指针可以在任何时候被初始化。

    标准输出流:
    使用cerr显示错误信息 使用其他信息用clog显示

    c++数据结构
    数组运行定义可存储相同类型数据的变量 但是结构中c++中另一用户自定义的额可用数数据项。
    title author subject bookId 标题作者类目书的Id

    结构指针:
    可以定义指定结构的指针 方式和其他的类似。 如下所示:
    struct Books *struct_pointer;
    struct_pointer = &Book1;struct_pointer = &Book1;

    使用简化版的数据结构创建书籍
    可以使用Books来定义Books类型的变量 而不是使用struct 实例。

    继承:允许我们依据另一个类来定义一个类。 使得维护和创造一个应用程序变得容易。

    当创建一个新的类时,并不需要编写新的数据成员和成员函数,只需要指定新建的类继承一个以有的类成员。 这个以有的类成为基本或者派生类。

    继承代表了Is a的关系。

    多态:
    意味着同一个对象 不同的函数类型执行不同的函数。

    数据抽象:

    数据接口:
    描述了类的行为和功能 不需要完成类的特定实现。
    c++接口使用抽象类来实现,抽象类与数据抽象互补混淆,数据抽象是一个把细节和先关数据分开的概念。
    如果类中至少由一个函数被声明为虚函数 那么这个类就是抽象类,虚拟函数通过0来指定。

    c++动态内存
    栈内存 在函数内部声名的所有变量都将占用栈内存
    堆内存 这是程序未使用的内存 在程序运行时可以动态分配内存

    c++命名空间

    C++预处理器的类型
    define if inclide if else line

    c++信号处理
    提供了signal函数来捕获异常
    信号 描述
    SIGABRT 程序的异常终止,如调用 abort。
    SIGFPE 错误的算术运算,比如除以零或导致溢出的操作。
    SIGILL 检测非法指令。
    SIGINT 接收到交互注意信号。
    SIGSEGV 非法访问内存。
    SIGTERM 发送到程序的终止请求

    c++多线程
    运行几个以上的程序 两种类型的多任务处理 基于进程和线程。
    基于进程 多任务处理。
    基于线程 用一个程序并发执行。

  • 相关阅读:
    监听器
    事务
    DBUtils
    EL技术,JSTL技术与javaEE开发模式
    JSP技术
    Cookie and Session
    HttpServletRequest
    Servlet
    Http与Tomcat服务器的简单配置
    XML
  • 原文地址:https://www.cnblogs.com/xiaocongcong888/p/9799103.html
Copyright © 2020-2023  润新知