- 博客(33)
- 问答 (11)
- 收藏
- 关注
原创 前端框架中@路径别名原理和配置
查阅相关框架配置,找到路径别名的设置项配置tsconfig.json,加入别名的查找路径还报错就检查一下配置的tsconfig中include是否是包含了所有业务代码文件,如果没有,说明可能使用了reference,去有相应include的配置文件中添加上一步的配置。
2024-10-01 21:07:40
1016
原创 godot编写一个节点实时属性显示系统
我们在游戏开发中,为了方便,往往需要在游戏运行时获取到相关节点的信息如果我们每次都通过编辑器的debug模式看未免太过麻烦,所以会有在界面上显示一些节点属性值的需求。
2022-08-07 22:28:08
1482
原创 GO 使用 Protobuf实用指南
本文是笔者在日常工作中使用protoc生成go文件的实用总结, 并不会详细介绍各种细节, 之后有心得则会再添加定义proto的语法格式版本, 这里使用protobuf3package定义的是此protobuf文件所属的模块(与go无关)之所以要定义模块是为了防止类型冲突比如, a.proto文件定义了一个, b.proto文件也定义了一个, 如果两个proto文件在同一个模块,则会冲突,不被允许我们可以让a.proto指定 b.proto指定这样就可以通过 a.A, b.A 来同时使用两个不同的类型
2022-06-08 19:49:22
1450
原创 事务的隔离级别
事务的隔离级别mysql在高并发场景下运用事务会出现一些问题,这些问题可以总结为三个方面脏读一个进程可能会读到一个事务还没提交前的动作,比如,一个事务先将name字段从“张三”改为了“李四”,这时另一个mysql客户端b连接读取了name字段,读到了“李四”,但这时由于事务后面的执行出错,进行了回滚,name字段就又变成了张三,而客户端b却认为自己读到的是李四。不可重复读这是指一个事务过程中,先后读取相同的记录有可能产生不同的结果。比如,客户端连接进程a执行了一个事务,先读name字段,读
2021-11-02 15:58:04
95
原创 聚集索引和非聚集索引
聚集索引和非聚集索引一言以蔽之,聚集索引就是索引顺序和物理顺序一致的索引结构,非聚集索引是索引顺序与物理顺序不一致的索引结构。他们之间的关系有点像数组和哈希表,数组的下标就是聚集索引,哈希表的键就是非聚集索引。Mysql中,聚集索引和非聚集索引的底层结构都是B+树聚集索引mysql中,主键就是加了唯一性约束的聚集索引,如果我们在创建表的时候不显式指定主键,mysql会自动为我们选择一列作为主键。聚集索引一张表只能有一个,这是因为聚集索引的索引顺序与物理排列顺序一致,而物理排列顺序只能有一个。当然
2021-11-01 19:39:00
325
原创 缓存层与数据库层数据同步问题
缓存层与数据库层数据同步问题在实际的业务开发中,为了避免大量请求直接操作数据库,我们会用redis做一个缓存层,用户的数据库请求先在redis中查询,查找的到就返回,查找不到再从数据库取数据更新缓存,然后返回。这就涉及到了缓存层与数据库层之间如何保持数据一致的问题。一、旁路缓存方案写操作时,先修改数据库,再删除相关缓存。之所以要删除缓存而不是更新,主要是基于:有些缓存更新涉及多个表之间的复杂操作,频繁进行会消耗性能。不删缓存,每次更新数据库都要计算一次,而删除缓存后,缓存的计算只会在下一次请求
2021-10-31 21:17:40
225
原创 libev库解剖(1)
libev的安装(注意,libev仅支持linux)从github下载源码 源码进入源码目录,安装指令三连:./configuremakemake install这样就安装完成了,默认安装在/usr/local/lib在编写程序时,引用<ev.h>, 并在编译时,指定 -lev 选项就可以了从示例程序看架构// a single header file is required#include <ev.h>#include <cstdio>#in
2021-10-22 11:45:20
503
原创 linux下不产生core文件的原因
不产生core文件的原因最近在用gdb调试时,故意让一个进程core dump,但是却没有产生core文件,解决过程如下:首先考虑了系统限制问题,shell键入ulimit -a查看core文件有没有限制大小,发现没有,是unlimit,所以不是这个原因(如果大小为0,说明禁止了core文件的产生,可以通过 ulimit -c unlimit 来解除限制)其次考虑是不是程序实现和权限方面的问题查阅资料,总结不产生core的相关情况如下:进程设置了用户id(即调用setuid),但当
2021-10-20 17:37:13
15354
18
原创 Missing separate debuginfos, use: yum debuginfo-install libgcc-8.4.1-1.el8.x86_64 libstdc++-8.4.1-1.
gdb缺少debuginfo库的解决方法在使用CentOS Linux release 8.4.2105版本的gdb调试程序时,弹出Missing separate debuginfos, use: yum debuginfo-install libgcc-8.4.1-1.el8.x86_64 libstdc++-8.4.1-1.看来是缺少相应的debuginfo库,首先尝试提示信息中的帮助,直接shell使用:sudo yum debuginfo-install libgcc-8.4.1-1.e
2021-10-20 16:01:48
2372
原创 MySql的备份与恢复
MySql的备份与恢复物理备份和逻辑备份 物理备份是指将数据库在硬盘上的所有文件都拷贝一份。 优点是速度快,生成数据少,可以在mysql离线情况下进行备份 缺点是可移植性差,需要做数据恢复的电脑端与源电脑端有相似的物理存储结构 逻辑备份是将所有表的逻辑语句(CREATE TABLE / INSERT ...诸如此类的语句)导出来 优点是可移植性好,能做到数据表级别的恢复 缺点是速度慢,生成数据多,需要mysql运行状态 这里主要介绍一下逻辑备份,进行逻辑备份我们一
2021-08-09 10:39:09
116
原创 linux下的ar命令
ar命令ar命令被用来创建、修改档案,或是从档案中提取文件。档案是指一组有特殊结构文件的集合,可以从档案中将其中的文件逐一提取出来。档案中的文件称为档案的成员文件。ar创建的档案中的文件一般为二进制目标文件,因为它经常用来做静态库或动态库。语法格式ar [OPTIONS] archive_name member_files选项r用来创建档案,或者是向档案的末尾插入文件。ar r lib.a test.o上述命令效果是创建一个lib.a档案,并将test.o文件插入到lib.a中去
2021-01-22 22:34:50
577
翻译 【翻译】制作DEB/debian包
简单制作Debian包的方法和本地包仓库(原英文网址:传送门)这篇文章介绍了一个创建自己制作的Debian包的简单方法,并在本地包仓库添加它。尽管我们可以使用现存的Debian/Ubuntu包,我们仍将从头开始创建和打包我们的小程序。一旦我们的包制作完成,我们会将其添加到本地包仓库中去。这篇文章介绍的是一种非常简化的方法,事实上在很多复杂的场景下它也是一个创建Debian包的模板。创建一个二进制可执行文件我们需要去做的第一件事情是创建一个简单的C++程序,编译并测试它。如果你想要去编写一个简单的C程
2021-01-18 23:53:33
605
原创 【QT】QLayout: Attempting to add QLayout “to ***“, which already has a layout的终极解决方法
问题最近在捣鼓QT的时候,经常遇到Qlayout布局不成功的问题,提示是要设置的部件已经有布局了。如字面意思,这种情况就是多次设置布局引起的,那么如何解决呢?原因以及解决方法代码性重复设置第一种可能就是你自己在写代码的时候重复设置了layout,有以下两种情况1. 初始化时指定了父窗口,最后又显式调用setLayout函数//首先创建布局的时候就指定了父窗口,那么你的部件在这里就被设置了一次布局QVBoxLayout * lay = new QVBoxLayout(this)
2020-09-19 09:53:01
14882
原创 CentOS 更换yum源记录
CentOS 更换yum源记录问题:yum安装软件总是失败原因:yum默认源在国外,需要更换国内的源说明:yum源就是CentOS的包管理工具,Centos根据系统的配置文件去相应服务器down安装包再进行安装,要更换源,则只需将yum的配置文件换掉即可。国内相应的源都会有相应的配置文件,去百度上搜一下down下来就可以了解决方法:第一步 进入配置文件所在目录cd /etc/yum.repos.d 第二步 备份yum的源文件mv Centos-Base.repo Centos-Ba
2020-06-26 11:02:57
203
原创 CentOS No entry for xxx in x section of the manual的解决方法
CentOS No entry for xxx in x section of the manual的解决方法问题:想查看系统调用的函数说明时,发现在centos上看不了产生的原因:centos默认安装的manual是精简版解决方法:安装man-pagesyum install man-pages...
2020-06-26 10:47:58
526
原创 【C++】动态链接库(dll)和静态链接库(lib)
概述动态链接库(dll)是指在程序运行时动态加载的库文件。特点是可是将主文件变得很小,例如QQ.exe,里面只有程序的运行框架,其余大部分都是dll调用,需要某个功能,将dll加载进来再使用就好了。这样的优点是实现了模块化,dll可以被多个文件所加载;缺点是dll调用会有系统开销静态链接库(lib)是指在程序运行前加载进程序的库文件,有像我们include<stdio.h>,将stdio.h文件中的所有东西都粘贴到相应位置,静态链接库也一样,在静态链接库里写了什么,那些东西就会粘到我们引
2020-05-12 22:25:09
1193
原创 【WindowsAPI】窗口类API
目录窗口类API汇总(持续更新)1.FindWindowA() 获取窗口句柄2.SetWindowPos() 设置窗口的位置、大小和显示方式窗口类API汇总(持续更新)1.FindWindowA() 获取窗口句柄官方文档(1)语法:HWND FindWindowA( LPCSTR lpClassName, LPCSTR lpWindowName...
2019-09-22 16:51:16
4069
原创 【QT】窗口的显示与模态窗口
1.显示窗口我们知道,在QT里,只要创建一个窗口的类,再调用QWidget基类的.show()方法就可以使一个窗口显示。以QWidget类来作说明/* MyWidget.cpp 主类的实现*/#include "mywidget.h"#include "ui_mywidget.h"#include<QDialog>#include<windows.h&g...
2019-09-11 17:27:45
6030
原创 【QT】窗口几何布局学习
首先我们由上图可知,QT的窗口分为两部分一部分是内部的content区,另一部分是frame区,content里包含了窗口的各种控件,frame主要是外边框和标题栏。QT提供了两套函数来供我们获取这两部分的基本坐标。content区: geometry().x() :获取内容部分左上角点相对于整个屏幕的x坐标 geometry().y() :获...
2019-09-07 23:28:14
1362
原创 【C++】MSB6006 “CL.exe”已退出,代码为 2。
问题产生原因:存在具有返回类型的函数没写return语句。解决方法:仔细检查代码中的函数,看看有没有函数返回类型不是void,但是没有写return语句#include<iostream>using namespace std;int test(){ ... //return 0;}//会报MSB600错误,原因在于test函数没有返回值...
2019-09-01 20:32:31
5899
1
原创 【每日一题】求一元二次方程的解
Python版:'''这是关于用求根公式计算一元二次方程的小程序作者:Smallk-K时间:2018年11月30日'''import math #引入python的math库,以便使用其中的求根函数sqrt()#定义一个函数,判断一元二次方程有没有值def Valid(a,b,c): if b*b - 4*a*c < 0: return 0...
2018-11-30 18:55:46
743
原创 【PHP】让PHP显示错误信息而是不是http error 500
对于很多新手(就像我)而言,PHP的代码在一开始不显示错误信息让人很蛋疼,写了一大长串的程序,一运行就提示错误500也不给个哪里出错……上网查了下如何开启,然后自己设置了一下还是没用……后来发现是自己傻逼了,因此将我踩的坑发出来……开启错误提示 1.display_errors = On找到php.ini文件(你php根目录下),以记事本方式打开,找到display_error...
2018-11-09 12:38:07
5726
原创 【PHP】递归函数实现递归运算器
<html> <head> <meta charset="utf-8"/> </head> <body> <!-- 表单提交开始--> <form action="test-digui.php"> <!--提交的php处理文件是
2018-11-02 23:11:27
275
原创 【PHP】简单的隔行颜色区分表格的实现
<html> <head> <title>Creating tables</title> <meta charset="utf-8" /> </head> <body> <table border="1" style = 'border-co
2018-10-30 23:31:04
3095
原创 【PHP】简单计算器的实现
<!DOCTYPE html><html> <head> <title>计算器</title> <meta charset = 'utf-8'> </head> <body> <!--表单提交后的处理--> <?php
2018-10-30 00:14:24
556
原创 【Linux实用指令】echo
Echo目录EchoLinux 的原版解释名字语法描述参数实例: 1.输出字符串 'www.smallk.cn'2. -n 参数的用法3. -e 参数的用法Linux 的原版解释man echo名字: echo - 显示一行文本语法: echo [短参数] [字符串] ...
2018-09-28 00:18:10
558
原创 【每日一题】奖金问题
一:问题描述二:问题分析 涉及数据:利润profit,奖金bonus 数据间的关系:当profit<=10w,bonus = profit *0.1;当profit<=20w, bonus = 100000*0.1 + (profit-100000)*0.075……三:代码 #由用户输入一个利润,并将输入转换为整数型方便进行比较运算profit = int(input('...
2018-06-04 23:56:24
492
原创 【每日一题】
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?代码:num = 0for i in range(1,5): for a in range(1,5): for b in range(1,5): if (i!=a) and (i!=b) and (a!=b): print(i*100+...
2018-06-03 11:51:01
187
原创 【python模块学习】pickle库学习实录
pickle模块简介 pickle模块可以将内存中的Python对象转化成序列化的字节流,这是一种可以写入任何类似文件对象的字节串。pickle模块也可以根据序列化的字节流重新构建原来内存中的对象:转换成原来那个对象。 ...
2018-04-05 00:01:27
201
原创 【每周一爬】爬取盗版小说网的小说
【本帖持续更新,直到能将一本书全部爬到一个.txt文件中】一:准备工作 爬取的网站地址:http://b.faloo.com/tag/6293.html 爬取的书:与校花同居的大盗 链接:https://b.faloo.com/f/163306.html找到存放文本的html标签 先打开小说的第一章,我们可以采用审查元素的方式来找到这个网页的源代码。一般...
2018-04-03 00:09:06
4126
2
原创 【每日一题】百元买百鸡问题
问题描述:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?Python版for i in range(0,20): #公鸡最多买20只 for x in range(0,33): #母鸡最多买33只 for y in range(0,100): #小鸡最多买100只 if ...
2018-04-02 23:01:37
5133
空空如也
【QT】QGraphicsScene接收不到MouseMove事件
2021-10-19
C++中iterator_traits为什么会报这个错误(非类型视为类型)?
2020-09-01
Socket编程,tcp连接不到服务器(本机局域网可以连接上)
2020-06-22
请问在vscode中如何做到跨文件函数提示的?
2020-05-08
C++map类型 这里用[]操作符为什么会报错?
2020-01-03
C++ 中map类型为什么不能直接insert一个initializer_list?
2020-01-01
为什么这里vector的迭代器比较会触发断言?
2019-11-19
c++赋值操作符重载问题
2019-11-11
拉格朗日插值查找的疑问
2019-09-29
scanf的正则表达式问题
2019-09-28
C语言预编译取消windows平台下的黑窗口为什么无效?
2019-09-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人