meowrain

MeowRain

Life is Simple

C++ Const与function

const与function 在c++中,const在function中有不一样的使用 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #include <iostream> #include <string> class Example { public: Example(const std::string &name) : m_Name(name) {} const std::string& GetName() const {return m_Name;}; private: std::string m_Name; }; int main() { Example example("John"); const std::string& name = example.GetName(); std::cout << name << std::endl;//输出 “John" // name = "Alice"; //wrong } 这个函数的返回值是一个指向常量字符串的引用。const修饰的是返回值的类型,表示返回的字符串是一个常量,不能被修改。 函数签名中的第二个const修饰的是成员函数本身,表示这个函数是一个const成员函数,即在该函数内部不能修改类的成员变量。 因此,这个函数返回一个指向常量字符串的引用,并且在该函数内部不修改类的成员变量。

C++STL

C++ STL vector vector构造器 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 #include <vector> #include <iostream> /* vector<T> v; // 采用模版类实现,默认构造函数 vector<T> v(T* v1.begin(), T* v1.end()); // 将v1[begin(), end())区间中的元素拷贝给本身 vector<T> v(int n, T elem); // 将n个elem拷贝给本身 vector<T> v(const vector<T> v1); // 拷贝构造函数 */ int main(void) { std::vector<int> v; // 默认构造函数 for(int i = 0;i<10;i++) { v.

Mysql基础_韩顺平老师转载

第24章 零基础学MySQL 解决之道 文件、数据库 MySQL 数据库的安装和配置 使用命令行窗口连接MYSQL 数据库 操作示意图 数据库三层结构 数据在数据库中的存储方式 SQL 语句分类 创建数据库 查看、删除数据库 备份恢复数据库 备份恢复数据库的表 创建表 Mysql 常用数据类型(列类型) 数值型(整数)的基本使用 定义一个无符号的整数 数值型(bit)的使用 数值型(小数)的基本使用 字符串的基本使用 字符串使用细节 日期类型的基本使用 创建表练习 修改表-基本介绍 修改表-课堂练习 数据库C[create]R[read]U[update]D[delete]语句 Insert 语句 使用INSERT 语句向表中插入数据。 细节说明 update 语句 使用 update 语句修改表中数据 基本使用 使用细节 delete 语句 使用delete 语句删除表中数据 使用细节 select 语句 基本语法 注意事项(创建测试表学生表) 练习 使用表达式对查询的列进行运算 在select 语句中可使用as 语句 练习 在where 子句中经常使用的运算符 使用where 子句,进行过滤查询 使用order by 子句排序查询结果 合计/统计函数 count sum avg max/min 使用group by 子句对列进行分组 使用having 子句对分组后的结果进行过滤 字符串相关函数 数学相关函数 时间日期相关函数 加密和系统函数 流程控制函数 mysql 表查询–加强 介绍 分页查询 使用分组函数和分组子句 数据分组的总结 mysql 多表查询 多表查询练习 自连接 mysql 表子查询 什么是子查询 单行子查询 多行子查询 子查询当做临时表使用 在多行子查询中使用 all 操作符 在多行子查询中使用 any 操作符 多列子查询 在from 子句中使用子查询 表复制 自我复制数据(蠕虫复制) 合并查询 介绍 mysql 表外连接 外连接 mysql 约束 基本介绍 primary key(主键) not null(非空) unique(唯一) foreign key(外键) check 商店售货系统表设计案例 自增长 自增长基本介绍 自增长使用细节 mysql 索引 索引快速入门 索引的原理 索引的类 索引使用 哪些列上适合使用索引 mysql 事务 什么是事务 事务和锁 回退事务 提交事务 事务细节讨论 mysql 事务隔离级别 事务隔离级别介绍 查看事务隔离级别 事务隔离级别 mysql 的事务隔离级–案例 设置事务隔离级别 mysql 事务ACID 事务的acid 特性 mysql 表类型和存储引擎 基本介绍 主要的存储引擎/表类型特点 细节说明 三种存储引擎表使用案例 如何选择表的存储引擎 修改存储引擎 视图(view) 看一个需求 基本概念 视图的基本使用 视图细节讨论 视图最佳实践 视图课堂练习 Mysql 管理 Mysql 用户 创建用户 删除用户 用户修改密码 mysql 中的权限 给用户授权 回收用户授权 权限生效指令 课堂练习题 细节说明 本章作业 第24章 零基础学MySQL 解决之道 文件、数据库 为了解决上述问题,使用更加利于管理数据的东东-数据库,它能更有效的管理数据。

JDBC_韩顺平老师转载

第25章 JDBC 和数据库连接池 JDBC 概述 基本介绍 模拟JDBC JDBC 带来的好处 JDBC 快速入门 JDBC 程序编写步骤 JDBC 第一个程序 获取数据库连接5种方式 方式1 方式2 方式3 方式4 方式5 ResultSet[结果集] 基本介绍 应用实例 Statement 基本介绍 PreparedStatement 基本介绍 预处理好处 应用案例 JDBC 的相关 API 小结 封装JDBCUtils 说明 代码实现 事务 基本介绍 应用实例 批处理 基本介绍 数据库连接池 5k 次连接数据库问题 传统获取Connection 问题分析 数据库连接池种类 C3P0 应用实例 Druid(德鲁伊)应用实例 将JDBCUtils 工具类改成Druid(德鲁伊)实现 Apache—DBUtils 先分析一个问题 自定义方法解决 基本介绍 应用实例 表 和 JavaBean 的类型映射关系 DAO 和增删改查通用方法-BasicDao 先分析一个问题 基本说明 BasicDAO 应用实例 第25章 JDBC 和数据库连接池 JDBC 概述 基本介绍 JDBC为访问不同的数据库提供了统一的接口,为使用者屏蔽了细节问题。

React Hooks

React Hooks 手动创建react项目 仓库地址 https://github.com/meowrain/Manually-React-Project https://dev.to/ivadyhabimana/how-to-create-a-react-app-without-using-create-react-app-a-step-by-step-guide-30nl 1 2 3 4 5 6 npm init -y npm install react react-dom npm install --save-dev @babel/core babel-loader @babel/cli @babel/preset-env @babel/preset-react npm install --save-dev webpack webpack-cli webpack-dev-server npm install --save-dev html-webpack-plugin 创建src目录,index.js,public目录和index.html,.babelrc,webpack.config.js 1 2 3 4 5 6 7 8 9 10 11 12 index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <div id="root"></div> </body> </html> 1 2 3 webpack:使我们能够在项目中使用 webpack 的实际包 webpack-cli:允许我们在命令行中运行 webpack 命令 webpack-dev-server:Webpack 服务器将在开发环境中充当我们的服务器。如果您熟悉更高级别的开发服务器 live-server 或 nodemon,那么它的工作方式是相同的。 1 2 3 4 5 6 7 8 // index.

Vue笔记13-Vue Transition组件

官方文档: https://cn.vuejs.org/guide/built-ins/transition.html 使用v-if处理盒子显示和消失 🤓 看上去很生硬,不是吗?我们来用transition组件处理一下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 <template> <div> <el-button color="#626aef" @click="flag = !flag"> 切换组件</el-button> <Transition name="fade"> <div class="box" v-if="flag">box</div> </Transition> </div> </template> <script setup lang="ts"> import { ref, Transition } from 'vue' let flag = ref<boolean>(true) </script> <style scoped> .

Vue笔记12-Vue插槽使用

简单使用 TestView.vue 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <script setup lang="ts"> </script> <template> <div class="parent"> <slot> </slot> </div> </template> <style scoped> .parent { width: 100px; height: 100px; background-color: aquamarine; } </style> HomeView.vue 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <script setup lang="ts"> import TestView from '../views/TestView.vue' </script> <template> <div> <TestView> <template v-slot> <p>HelloWOrld</p> </template> </TestView> </div> </template> <style scoped> </style> 具名插槽 TestView.

Vue笔记11-Vue Keep-Alive组件使用

keep-alive组件作用 我们的要组件能在被“切走”的时候保留它们的状态。要解决这个问题,我们可以用 内置组件将这些动态组件包装起来 1 2 3 4 <!-- 非活跃的组件将会被缓存! --> <KeepAlive> <component :is="activeComponent" /> </KeepAlive> 举例: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 HomeView.vue <template> <div> <el-button color="#626aef" @click="flag = !flag"> 切换组件</el-button> <SonViewOne v-if="flag"/> <SonViewTwo v-else/> </div> </template> <script setup lang="ts"> import {ref} from 'vue' import SonViewOne from './SonViewOne.vue'; import SonViewTwo from './SonViewTwo.vue'; let flag = ref<boolean>(false ); </script> <style scoped></style> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 SonViewOne.

Vue笔记10-Vue组件值传递

父子组件传值 父组件向子组件传值 defineProps 父组件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <script setup lang="ts"> import { onMounted, ref } from 'vue' import TestView from '../views/TestView.vue' let imgUrl = ref<string>() onMounted(async ()=>{ const response = await fetch('https://api.waifu.pics/sfw/waifu') const json = await response.json() imgUrl.value = json.url; }) </script> <template> <div> <TestView :url="imgUrl"/> </div> </template> <style></style> 子组件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 <script setup lang="ts"> import { defineProps, toRef, watch, watchEffect } from 'vue'; const props = defineProps({ url:String }) watch(()=>props.

Vue笔记09-Vue生命周期

一:主要分为渲染、更新、销毁三个部分 1:渲染顺序 (先父后子,完成顺序:先子后父) 子组件先挂载,然后到父组件 父 beforeCreate->父 created->父 beforeMount->子 beforeCreate->子 created->子 beforeMount->子 mounted->父 mounted 2:更新顺序 (父更新导致子更新,子更新完成后父) 子组件更新过程 父 beforeUpdate->子 beforeUpdate->子 updated->父 updated 父组件更新过程 父 beforeUpdate->父 updated 3:销毁顺序( 先父后子,完成顺序:先子后父) 父 beforeDestroy->子 beforeDestroy->子 destroyed->父 destroyed
0%