11k10 分钟

# C MySQL API 详解 # 普通调用 # 开发环境 需要引用头文件 #include <mysql.h> 默认已经安装了 MySQL 环境 配置 VS2022 项目属性 右键项目,进入属性 需要在 属性 的 VC++ 目录中包含目录和引用目录中分别添加 MySQL 安装文件夹下的 include 文件夹和 lib 文件夹 在属性中输入目录下的附加依赖项添加 MySQL 加密动态库 # 代码测试 #include <stdio.h>#include <mysql.h>int main(void)&#123; printf
17k16 分钟

# 银行管理系统 开源注释详解:Github # 功能 添加账户 储蓄账户 信用卡账户 存款 取款 当前账户余额 指定时间内的账目信息 利息 本地化存储,二次启动同步 所有账户总金额 退出 # 数据存储思路 将每次运行的代码存储到本地 txt 文件当中,每次启动可以首先初始化文件内容,已达到文件储存的目的 # 缺点 数据量过大数据初始化难 业务逻辑越复杂也越难以保存 用户交互需要按照文件保存书写指令,十分不便 或许可以使用 MySQL 数据库存储数据,用 C++ 与 MySQL 进行交互,达到相关查询,存储的功能。 # 类图呈现 # 各文件功能 date.h
1.5k1 分钟

# 个人网站 # 网站框架 使用 Github 开源框架 Hexo ,拥有蛮多的优秀好看的 主题 ,使用起来也十分的方便,主题选好就定下来,因为很多主题涉及的相关配置不同,仍需花费一些时间。 hexo官网 hexo开发文档 hexo主题 # 网站服务器 初步方案使用 Github仓库Page功能存储 页面内容,但由于国内网速过慢,最终被弃用,也不算是完全弃用,使用了 Cloudflare 的 Page,后者拥有 全球CDN ,在速度方便高于 Github 。 Cloudflare 通过 Cloudflare 的 Page 功能可以直接绑定 Github仓库 ,
5.6k5 分钟

# 异常 异常是程序运行过程中出现问题 "异常" 并不经常出现 处理异常使程序像没有发生过问题一样继续执行 # 何时使用异常处理 异常处理 用于处理同步错误 (语句执行时发生的错误) 常见的异常处理错误: 数组下标越界,算法溢出,被零除,函数参数不合法,内存不够引起的内存分配不成功 异常处理不是用于处理异步事件相关的错误的 磁盘读写结束,网络信息到达,点击鼠标或键盘,这些与程序的控制流程并行,独立 # 异常处理的基本思想 # 异常处理的语法 抛掷异常的程序段 throw 表达式; // 表达式子可以是变量也可以是语句或小段代码
12k11 分钟

# 流对象与文件操作 程序建立一个流对象 当程序与 外界环节 进行信息交流时,存在着两个对象,一个是程序中的对象,另一个是文件对象 流是一种抽象,它负责在数据的生产者和数据的消费者之间建立联系,并管理 数据的流动 指定这个流对象与某个文件对象建立连接 程序操作流对象 流对象通过文件系统对所连接的文件产生作用 # 提取与插入 读操作在流数据抽象中被称为 (从流中) 提取 写操作被称为 (向流中) 插入 类名 说明 包含文件 抽象流基类 ios 流基类 ios 输入流类 istream 通用输入流类和其它输入流的基类 istream
8.7k8 分钟

程序:(静态的概念)源代码,指令 进程:运行着的程序,一个程序可以创建多个进程 线程:线程从属于进程,一个进程可以有多个线程,线程之间共享进程的资源 任务:具体要做的事情(进程 / 线程) # 获取进程 ID //linux 编程环境man getpid // 得到 linux 帮助文档,Linux 的编程手册#include <sys/types.h>#include <unistd.h>pid_t getpid(void)pid_t getppid(void)//pid_t 类型用于存放
9.7k9 分钟

# Linux 基础命令 1 关机文件类操作 Linux 主要是通过命令行来进行运行管理的操作系统 # 比图像化 Windows 的优点: 快速 批量化 自动化 智能化的处理业务 进入 root 权限 (首次) sudo passwd // 首次需要设置密码//输入密码su // 就如root用户权限# 常见关机,重启和注销指令: # Linux 各文件夹含义及用途: /boot 该目录默认存放 Linux 的启动文件和内核,包含可引导的 Linux 内核和引导装载(boot loader)配置文件(
7.6k7 分钟

# 引例整数和浮点数求绝对值 使用两种重载函数? int abs(int x)&#123; return x<0? -x:x;&#125;double abs(double x)&#123; return x<0? -x:x;&#125; 解决:函数模版 创建一个通用功能的函数 支持多种不同形参 简化重载函数的函数体设计 /** project : 模版求绝对值*/#include <iostream>using namespace std;template<typename T> /
8.7k8 分钟

# 第十八天:C++ 多态性 # 初始虚函数 用 virtual 关键字说明的函数 虚函数是实现运行时多态性的基础 C++ 中虚函数是动态绑定的函数 虚函数必须是非静态的成员函数,虚函数经过派生之后,就可以实现 运行过程中 的多态 # 虚表与动态绑定 虚表 每个多态类有一个虚表 (virtual table) 虚表中有当前类的各个虚函数的入口地址 每个对象有一个指向当前类的虚表的指针 (虚指针 vptr) 动态绑定的视线 构造函数中为对象的虚指针赋值 通过多态类型的指针或引用调用成员函数时,通过虚指针找到虚表,进而找到所调用的虚函数的入口地址 通过该入口地址调用虚函数 #
8.5k8 分钟

# C++ 类的继承 # 类的继承与派生 继承与派生是同一过程从不同的角度看 保持已有类的特征而构造新类的过程称为继承 在已有类的基础上新添自己的特征而产生新类的过程称为派生 被继承的已有类称为 基类 /(或父类) 派生出的新类称为 派生类 /(或子类) 直接参与派生出某类的基类称为 直接基类 基类的基类甚至更高层的基类称为 间接基类 继承的目的:实现设计与代码的重用 派生的目的:当新问题出现,原有程序无法解决 (或不能完全解决) 需要对原有程序进行改造。 # 派生类的定义 # 单继承时: class 派生类名:继承方式1 基类名1,继承方式2 基类名2,..