avatar
Articles
47
Tags
0
Categories
12

qianmu's blog
Search

qianmu's blog

git
Created2023-03-27|Basic
git远程仓库网址:https://github.com 张朝阳账户:zhangzhaoyang@chd.edu.cn 用户名zhzj0218,密码:一般密码 以将/d/gitproject/pycharm_python_and_pyqt中的文件同步到git中的zhzj0218下的pycharm_python_and_pyqt为例 [TOC] 查看分支状态git status 创建版本库git init 把当前的目录变成Git管理的版本库 git status 查看当前分支状态 git add . 把当前文件夹下的文件提交到暂存区 紧接着git commit -m “提交标签,如first proposed” 把暂存区提交到版本库 执行git status查看状态,确保工作区是干净的,没有需要提交的内容 (git log查看 ...
MySQL
Created2023-03-27|MySQL
安装 到官网进行安装。点击MySQL Installer for Windows下载安装包后一直next即可。 启动与停止 mysql开机默认启动。 在win+R运行services.msc,找到mysql右键操作。 在cmd中运行net start mysql80、net stop mysql80进行启动与停止。 客户端连接 方式一:直接使用mysql提供的命令行进行连接。开始找到MySQL Command Line Client-Unicode,进去输入密码操作。 方式二:先配置PATH环境变量C:\Program Files\MySQL\MySQL Server 8.0\bin。在任意cmd输入mysql -u root -p,输入密码操作。 MySQL数据库的好处 关系型数据库RDBMS,建立在关系模型基础上,由多张相互连接的二维表组成的数据库。格式统一,便于维护,使用SQL语言操作,使用方便。数据模型是数据库,可以创建多个表。 SQL (1) SQL通用语法 (2) SQL分类 (3) DDL ​ 查询数据库 12show ...
面向对象
Created2023-03-22|C++
explicit关键字,作为返回值时加上不调用拷贝构造函数。作为类关键字防止被拷贝。 多态父类指针指向子类对象 父类提供virtual 虚函数,子类对象实现 析构函数加virtual,可以调用子类的析构函数 构造函数前不能加virtual,因为构造函数执行后,虚表才出现 运算符重载 类中,++i比i++效率高,因为后者还要调用构造函数 工厂模式用父类指针作为返回值,在返回值创建子类对象 单体模式sizeof、_countof_tscanf_s( _T(“%d”), v1, _countof(v1)); sizeof 数据类型大小与数据大小相乘,实际的数据大小 countof 数据大小,实际上的数据数量 结构体对齐大小为4,1,8,按最大的对齐 如上,实际上为16。double占8,另外两个加起来用8 重载函数名一样,参数类型不同,参数数量不同 与返回值类型无关 使用const,发生重载。 const是常对象调用的。 菱形继承一个派生类D是由多继承产生的,它的多个基类B、C继承了同一个基类A。造成派生类D中具有多份A类的属性,属于一种不合理的现象 会让高层的基类在底层的派生类中 ...
智能指针
Created2023-03-22|C++
智能指针 c++11std::unique_ptr<T> :独占资源所有权的指针。当我们独占资源的所有权的时候,可以使用 std::unique_ptr 对资源进行管理——离开 unique_ptr 对象的作用域时,会自动释放资源。 std::unique_ptr 是 move-only 的。 12std::unique_ptr<int> uptr = std::make_unique<int>(200);std::unique_ptr<int> uptr1 = uptr; // 编译错误,std::unique_ptr<T> 是 move-only 的 std::unique_ptr 可以指向一个数组。 可以自定义 deleter。 12345678910{ struct FileCloser { void operator()(FILE* fp) const { if (fp != nullptr) { fc ...
c++20
Created2023-03-22|C++
语法糖语法糖是指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。 C++也有很多语法糖,比如运算符重载、lambda表达式、auto类型推导等。这些语法糖可以让我们的代码更简洁、更易读、更高效。例如,下面两种写法是等价的: 12345678int sum = 0;for (int i = 0; i < 10; i++) { sum += i;}int sum = 0;for (auto i : {0,1,2,3,4,5,6,7,8,9}) { sum += i;} c++11、20新特性大多数都是语法糖 c++20C++20有很多新的特性,其中最重要的四个是概念、范围、协程和模块。概念可以让我们定义泛型函数或类的约束条件,范围可以让我们更方便地操作容器和迭代器,协程可以让我们编写异步代码,模块可以让我们更高效地组织代码。除此之外,C++20还有一些其他的新特性,比如三向比较运算符、指定初始化、日历和时区功能等。 概念概念是一种用来约束模板类型的语法糖。我们可以用concept关键字 ...
引用
Created2023-03-22|C++
指针与引用引用必须要初始化。 指针会根据编译器不同而变化,32位4字节,64位8字节 引用根据被引用的数据类型变化 int*& 指针的引用 以指针来判断。 右值引用 c++11 左值:可以长时间保存,可以存在于=左边的值,可以取地址; 右值:临时值,不能存在于=左边的值,不可以取地址。 左值引用,实际上是取地址赋给新的变量。必须初始化。 常引用,用于引用部分右值,不可进行更改。实际上是使用一个临时变量与一块临时内存进行存储,必须初始化。可以引用左与右。 右值引用原理相近,临时内存的地址无法获取,但是可以对临时内存里面的内容进行修改。 12int&& v1 = 10;v1++; 右值引用是C++11新特性,之所以引入右值引用,是为了提高效率。如下面所示: 1234567891011121314151617181920212223242526272829303132333435363738394041class A{public: A(size_t N):m_p(new char[N]) { } A(con ...
hexo快速入门
Created2023-03-20|Basic
安装安装node.js安装git安装hexo 新开一个文件夹,右键,在这里打开git bash 12npm install -g hexo-clinpm install --save hexo-deployer-git 配置github SSHssh可以免密的将本地的源码和资源上传到github,无需要每次都输账号和密码。 12cd ~ssh-keygen -t rsa -C "邮件地址" 在用户文件夹下生成了一个.ssh文件夹,进入,复制.pub文件中全部内容 打开github主页,点击个人设置,点击左侧的SSH and GPG keys,点击New SSH key 将id_rsa.pub复制的内容粘贴到key中,title随便起一个就行。 配置好用户名和邮箱 12git config --global user.name "xxx" #你的github用户名git config --global user.email "xxx@163.com" #填写你的github注册邮箱 写个人博客初始化12hexo init ...
1…45
avatar
qianmu
Articles
47
Tags
0
Categories
12
Follow Me
Announcement
This is my Blog
Recent Post
Frida2024-03-18
使用WindowsAPI在Ring3进行系统操作2024-03-18
arm和thumb2024-03-18
获取Ntdll函数与NtOS服务信息2024-03-09
APC注入2024-03-09
Categories
  • AI2
  • Algorithms3
  • Android2
  • Basic2
  • C++4
  • Crypto3
  • MySQL1
  • PWN8
Archives
  • March 202420
  • February 202413
  • April 20237
  • March 20237
Info
Article :
47
UV :
PV :
Last Push :
©2020 - 2024 By qianmu
Framework Hexo|Theme Butterfly
Search
Loading the Database