第一章 - 绪论
本章主要讨论如下内容: 计算机模型(图灵,冯诺依曼) 计算机发展史 计算机出现后所增加的社会和道德问题 计算机科学领域总览 1. 图灵模型Alan Turing(阿兰·图灵)在 1937 年提出的一个通用计算机设备的设想;其思想为:所有的计算都可能在一种特殊的机器上执行,也就是现在所说的图灵机。 1.1 数据处理器 将计算机定义为:数据处理器,在这个模型的定义下,计算机根据外部输入得到输出。
00-3.C++ STL 基础
模板 STL 初识 STL - 常用容器 STL - 函数对象 STL - 常用算法 模板模板就是建立通用的模具,大大提高复用性 模板的特点: 模板不可以直接使用,它只是一个框架 模板的通用并不是万能的 模板分类: C++另一种编程思想称为 ==泛型编程== ,主要利用的技术就是模板 C++提供两种模板机制:函数模板和类模板 函数模板函数
00-2.C++ 核心编程
内存分区模型 引用 函数提高 类和对象 文件操作 内存分区模型C++程序在执行时,将内存大方向划分为4个区域 代码区:存放函数体的二进制代码,由操作系统进行管理的 全局区:存放全局变量和静态变量以及常量 栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等 堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收 内存四区意义: 不同区域存放的数据,赋予不同的生命周期
01.C++ 面试题
#pragma pack(n) C/C++ Effective C++ 相关 STL 数据结构 算法 Problems 操作系统 计算机网络 网络编程 数据库 设计模式 链接装载库 书籍 1. C/C++1. const作用: 修饰变量,说明该变量不被改变。 修饰指针,分为指向常量的指针(pointer to const)和自身是常量的指针(常量指针,const point
MySQL 数据库连接池
关键技术点: MySQL 数据库编程 单例模式 queue队列容器 C++11多线程编程、线程互斥、线程同步通信和 unique_lock 基于CAS的原子整形 智能指针shared_ptr lambda表达式 生产者-消费者线程模型 项目背景为了提高 MySQL 数据库(基于C/S设计)的访问瓶颈,除了在服务器端增加缓存服务器缓存常用的数据之外(例如:redis),还可以增加连接池
11.C++ 多线程编程
本节分为五部分: C++ 11 的 thread 多线程类 线程间互斥 - mutex 互斥锁和 lock_guard 自动释放锁 线程间同步通信 - 生产者消费者模型 再谈 lock_guard 和 unique_lock 基于 CAS 操作的 atomic 原子类型 什么是多线程? 多线程(multithreading):是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算
00.C++ 设计模式概述
设计模式:是软件设计中常见问题的典型解决方案。它们就像能根据需求进行调整的预制蓝图,可用于解决代码中反复出现的设计问题。 设计模式与方法或库的使用方式不同,你很难直接在自己的程序中套用某个设计模式。模式并不是一段特定的代码,而是解决特定问题的一般性概念。你可以根据模式来实现符合自己程序实际所需的解决方案。 “每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能