自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(82)
  • 资源 (9)
  • 收藏
  • 关注

原创 字符串和整型之间的转换

字符串转10进制整数、16进制整数和整形转换成字符串。

2023-12-10 18:25:06 46

原创 189. 轮转数组

实现方法1:每次移动一位,直到k个位置。,将数组中的元素向右轮转。实现方法2: 旋转数组。

2023-11-11 23:05:15 743

原创 快速排序实现方法(剑指offer思路)

从参与排序的数组中,选择一个数,把小于这个数的放在左边,大于这个数的放在右边,然后递归操作。

2023-11-11 18:09:05 269

原创 c++ string 去除左右空行

【代码】c++ string 去除左右空行。

2023-01-25 20:49:31 282

原创 std::string 大小写转换

c++ string 的大小写转换

2023-01-25 19:59:08 2127

原创 c++ 拷贝构造函数参数是否需要const

class A{public: A(){ cout<<"A constructor\n";} A(A& a){ cout<<"A copy constructor\n"; } ~A(){ cout<<"A destructor\n"; } };class B{public: B(){ cout<<"B constructor\n";} B(const B& a){ cout<.

2022-05-13 08:44:06 891

原创 c++ string 存储一个文件内容

如何实现string 存储一个小文件的全部内容std::ifstream input("one.txt", std::ios::binary)if(input.is_open()){ std::stringstream ss; ss << input.rdbuf(); cout << "file context: " << ss.str() << std::endl; std::string tmp(ss.str()); cout &

2021-01-17 20:38:19 3441

翻译 go method使用

type Vertex struct { X,Y int}func (v Vertex) Abs() float64 { return math.Sqrt(v.X*v.X+v.Y*v.Y)}func (v *Vertex) Scale(f float64) { v.X = v.X * f v.Y = v.Y *f}使用指针作为方法的接收者,可以修改指针指向的对象。使用值作为方法的接收者,操作只是作用到所指对象的拷贝方法以大写字母开头,此方法被导出.

2020-08-18 17:54:04 132

原创 electron 开发程序禁用gpu渲染

一个简单的electron开发的客户端启动会有一下进程进入gpu渲染方法 app.disableHardwareAcceleration(),这个方法必须在app ready之前调用。 ***.exe --disable-gpu 也可以禁用gpu。 不管使用哪种方式,electron开发的客户端启动的时候,都会有上图所示的四个进程。如何验证是否关闭了gpu渲染。如果使用gpu渲染,手动关闭gpu进程,程序会出现黑屏,当gpu进程回复之后,黑屏消失。如果没有使用gpu渲染,

2020-08-17 15:59:01 8656 1

原创 c++ 析构函数设置成私有

class One{ public: One(){ cout<<"constructor\n"; } private: ~One(){ cout<<"destructor\n"; } friend void Destroy(One *one);};void Destroy(One *one){ if(one != nullptr){ delete one }}i.

2020-08-06 09:55:15 1975

原创 warning C4346: “std::vector<_Type,std::allocator<_Ty>>::iterator”: 依赖名称不是类型

template<class T>using vIterator = std::vector<T>::iterator;void traverse(vIterator<int> beg, vIterator<int> end){ while(beg != end) { std::cout<<*beg<<std::endl; ++beg; }}编译的时候会出现wa..

2020-08-04 14:46:14 787

原创 windows系统中,主进程启动子进程使,子进程和主进程在同一个任务栏上显示

主进程和子进程设置相同的,AppUserModelIDs。可以通过函数SetCurrentProcessExplicitAppUserModelID function实现。SetCurrentProcessExplicitAppUserModelID(L"your appid");微软开发文档参考https://docs.microsoft.com/en-us/windows/win32/shell/appids...

2020-07-08 19:54:20 766

原创 signtool sign sha256

signtool 微软参考文档https://docs.microsoft.com/zh-cn/windows/win32/seccrypto/signtool使用signtool签名参考文档https://docs.microsoft.com/en-us/windows/win32/seccrypto/using-signtool-to-sign-a-filesha1签名方式signtool.exe sign /f MyCert.pfx /p <PFX password> /...

2020-06-29 16:27:18 1119

原创 windows console程序,隐藏控制台展示

1、使用#pragma comment(linker,"/subsystem:\"windows\" /entry:\"mainCRTStartup\"")#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")int main(){ std::cout << "Hello World!\n"; }2、visual studio中设置。点击工程属性,选择链接器,系统,子系统,选

2020-06-03 11:38:36 587 1

原创 electron 7.x设置cookie出现的问题

4.x中设置cookiesconst cookie = {url:'http://.test.com',name:'one',value:'one-value'}session.defaultSession.cookies.set(cookie,(error)=>{ console.log(error)})7.x中使用这种方式,就会报无法解析cookie,必须这样使用...

2020-05-08 17:01:54 2521 1

原创 TypeError: Failed to execute 'fetch' on 'Window': Invalid value

javascript 中使用fetch发送http请求,出现TypeError: Failed to execute 'fetch' on 'Window': Invalid value错误。查看一下head中是否发送了中文,或者有字段值是乱码

2020-04-03 14:42:46 5655

原创 libuv使用ipc通信,结束方式

libuv提供了IPC通信模块,可以实现跨平台。一般的使用方法,是单独启动一个线程,来创建ipc,这个线程使用自己的事件循环。当我们想主动关闭ipc通信的时候,我们可以使用uv_close函数,释放我们创建的ipc通信流。注意这个释放一定是要在ipc创建的线程中实现。可以使用uv_async_send实现唤醒不同线程中的事件。这里面可以传递函数,也可以传递变量。传递变量的时候,一定注意变量的生...

2020-03-04 10:37:41 597

原创 远端branch和tag同名的时候,删除方法

git 删除远端分支,一般使用方法git push origin :branchNamegit push origin -d branchNamegit 删除远端tag,一般使用git push origin tag -d tagName当远端branch和tag是同一个名字的时候,使用上面方法删除分支,就会出现 error: dst refspec xxxx(b...

2020-02-19 12:56:17 1406

原创 oc和c++中给一个对象赋空值,对象调用方法产生的不同反应

c++ 代码,类对象赋值为空值class test{public: int age; char* name; void say() { std::cout<<"hello my name is "<<name<<std::endl; } void greet() ...

2020-02-18 22:05:21 1049

原创 python 中for循环的使用

学过c原因的同学,在遍历一个数组的值,最常用的方法就是使用for循环char* message[4]={"c","c++","java","c#"};for(int i=0; i<4; ++i){ printf("%s\n",message[i]);}for(auto ele : message) //c++ 11之后可以这样遍历{ p...

2020-01-22 14:49:18 421

原创 python 中序列解包使用

序列解包的几种使用方法1、给多个变量赋值x,y,z=1,2,32、交换两个变量的值x,y=y,x3、解析字典中返回值example={'one':'first','two':'second','three':'third'};key,value = example.popitem();序列解包的使用注意事项1、要解包的序列必须和等号左边列出的目标个数相同,...

2020-01-22 13:54:16 601

原创 python 列表访问方式

python 列表访问方式1、可以使用索引访问列表内容。序列中的索引编号,都是从0开始递增numbers=[1,2,3,4,5,6]numbers[0] //输出12、使用切片进行访问numbers=[1,2,3,4,5,6,7,8,9,10]numbers[1:4] //[2,3,4]numbers[0:1] /...

2020-01-22 11:05:36 6718

原创 qt 界面程序,运行的时候,打开控制台输出

qt 界面程序,运行的时候,控制台输出qDebug内容方法只需要在pro文件中配置CONFIG += console这样程序在运行的时候,就会打开控制台,输出debug内容这个方法,只在windows平台生效...

2020-01-21 17:10:52 2653 4

原创 electron 打开选择文件框

electron中有dialog模块,可以用来打来文件框,选择文件夹或者文件。两种实现方式1、可以通过ipc通信,main process,实现打开文件对话框的操作,然后把选择的文件夹或者文件再次通过ipc通信发送的render 进程。// in render.jsconst {ipcRenderer} = require('electron');function openD...

2020-01-21 14:35:47 10218

原创 electron-quick-start 使用style 标签出现设置的样式不起作用

electron-quick-start ,demo,在body 标签中使用style,设置的样式不起作用。,修改绿色框部分,为下面箭头所指部分。<metahtto-equiv="Content-Security-Policy"content="default-src'none';script-src'self'">...

2020-01-20 17:37:40 1771 2

原创 ++、--前置操作和后置操作的区别

1、运算符前置,是先进行计算,再取结果int i=0,j;int arr[10]={0};j = arr[++i]; //相当于 i=i+1; j=arr[i];变量i先进行加1,然后再使用2、运算符后置,是先进性赋值,然后再计算,再取结果int i=0,j;int arr[10]={0};j = arr[i++]; //相当于 j=arr[0];i=i+1;变量i...

2020-01-05 17:01:23 924

原创 css 布局中,子组件完全占满父组件的空间

1、可以使用宽度百分比的形式,下面的例子是各占一半<style>.main{ height:50px; width:200px; display:flex;}.left{ width:50%}.right{ width:50%}</style><div class='main'> <di...

2019-11-01 15:24:50 4007

转载 git 运行前的配置

Git 自带一个 git config 的工具来帮助设置Git外观和行为的配置变量。这些变量主要存储在三个不同的位置:/etc/gitconfig文件:包含系统上每一个用户及他们仓库的通用配置。如果使用带有 --system选项的git config时,它会从此文件读写配置变量。 ~/.gitconfig或~/.config/git/config文件:只针对当前用户。 可以传递--g...

2019-10-29 22:21:35 629

原创 Mac上安装了QT5.5编译的时候报错'cstddef' file not found

Mac版本是10.14,xcode是10.1,安装Qt5.5.1,编译qt example 中的demo,出现cstddef file not found。解决办法,方法1、在pro文件中,添加CONFIG += C++11方法2、指定mac的sdk依赖,比如QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.9...

2019-03-19 13:16:16 3308

转载 windows vscode安装go插件

vscode中有很多go的相关插件,非常好用如下:gocodegopkgsgo-outlinego-symbolsgurugorenamegomodifytagsgoplayimplgodefgoreturnsgolintgotestsdlv但是使用vscode 检查插件安装,会出现安装失败的情况。下面介绍如何安装失败的插件进行如下命令进行目录切换:cd ...

2019-01-30 20:42:38 2125

原创 排序-----选择排序

选择排序算法思想:首选从数组中选择最小的一个元素,将其和第一个位置的数据交换 接着从n-1个数据中选择次小的一个元素,将其和第二个位置交换元素 不断重复,知道最后两个元素交换,完成排序void SelectSort(int *arr, int len){ for (int i=0; i&lt;len; ++i) { for (int j=i+1; j&lt;len; ++j)...

2019-01-29 12:00:56 88

原创 排序----插入排序

插入排序算法基本思路:首先对前两个数据进行大小比较 接着从第三个数与拍好的前两个数进行比较,将第三个数插入到合适的位置 不断重复上述过程,直到把最后一个元素插入到合适的位void InsertSort(int *arr, int len){ for (int i=1; i&lt;len; ++i) { int tmp = arr[i]; for (int j=i-1; j...

2019-01-29 11:54:17 81

原创 排序---冒泡排序

基本思路:通过相邻数据的交换来达到排序的目的排顺流程:对数组的各数据,依次比较相邻的两个元素的大小 如果前面的数据大于后面的数据就交换位置。经过第一轮可以把最大值求出来,排在最后端 然后,再以同样的方法把剩下的元素进行比较,最后便可以得到从小到大的排好序的数组void BubbleSort(int* arr, int len){ for (int i=0; i<len...

2019-01-25 12:38:40 114

原创 分治算法找假币问题

int CheckMoney(int arr[], int left, int right){ int sum1=0, sum2=0, sum3=0; if ((right-left+1)%2 == 0) //偶数 { if (left + 1 == right) { if (arr[left] &lt; arr[right]) { return left;...

2019-01-25 11:34:37 4984 1

原创 求二叉树节点值的和

struct node{ node* left; node* right; int value; node(int v):value(v),left(nullptr),right(nullptr){}};int sum(const node* root){ if (root != nullptr) { if (root-&gt;left == nullptr &amp;&...

2019-01-24 21:54:08 4728

原创 字符串中查找子串,并返回子串相对字符换的位置

int FindSubstring(const char* all, const char* sub){ int all_len = strlen(all); int sub_len = strlen(sub); int i = 0, j = 0; for (;i&lt;all_len;++i) { if (all[i] == sub[0]) { for (j=1; j...

2019-01-24 21:02:06 704

原创 判断一个十位数是不是回文数

回文数的特点是,若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。12321是回文数,1233不是bool IsPlaindrome(int num){ std::vector&lt;int&gt; tmp; int last = num % 10; int remind = num; while (remind&gt;0) { tmp.push_back(l...

2019-01-24 20:48:47 281

原创 结构体大小的计算

结构体中的成员可以是不同的数据类型,成员按照定义时的顺序依次存储在连续的内存空间。和数组不一样的是,结构体的大小不是所有成员大小简单的相加,需要考虑到系统在存储结构体变量时的地址对齐问题。首先需要知道偏移量的定义,结构体变量中成员的地址和结构体变量地址的差值。结构体大小等于最后一个成员的偏移量加上最后一个成员的大小。显然,结构体变量中第一个成员的地址就是结构体变量的首地址,因此,第一个成员的偏...

2019-01-23 21:51:13 138

翻译 shared_ptr中高级应用

在编写基于虚函数的多态代码时,指针的类型转换很有用,比如把一个基类的指针转换成一个派生类的指针或者反过来。但是对于shared_ptr不能使用诸如static_cast&lt;T*&gt;(p.get())的形式,这样会导致转型后的指针无法再被shared_ptr正确管理。为了支持类似的用法,shared_ptr提供了类似的转型函数,static_pointer_cast&lt;T&gt;()...

2019-01-21 18:37:34 1414 1

翻译 API包装器模式--外观模式

外观模式能够为一组类提供简化的接口。它实际上定义了一个更高层次的接口,以使底层子系统更易于使用。外观模式是多组件包装器的一个示例。外观模式还可以将底层子系统和公有接口完全分离,进而底层类不可再访问。...

2019-01-16 22:46:45 385

QFileDialog 打开对话框,路径为我的电脑或者网络

使用QFileDialog打开文件夹,路径默认是我的电脑,或者是网络

2018-05-31

Qt 使用paint的一些简单使用和系统托盘的简单应用,实现只能通过系统托盘关闭,才能关闭程序

Qt paint的简单使用和系统托盘的一些简单使用,实现了任务栏关闭程序隐藏程序,只有在系统托盘中关闭程序,才能真正的关闭程序

2018-05-22

Qt中的c++技术完整包,希望喜欢这本书的同学,买纸质版本

Qt中的C++技术完整版本,希望想学习Qt的同学作为参考,如果喜欢,请购买纸质版本。

2018-03-10

深入应用C++11 代码优化与工程级应用

C++11 使用,很好的一本书,仅供爱好学习的人一个参考,如果感觉可以,请买作者纸质书本

2018-02-17

实现按钮重绘

主要使用MFC重绘按钮,主要贴图资源格式是PNG格式,使用visual studio 2010开发,visual studio 2015也可以使用

2017-09-19

visual studio 高级编程2015.pdf

visual studio 2015高级编程,可以更加详细了解vs2015特性,主要讲解.net开发。。。。。。。。。。。。。。。。

2017-09-11

游戏测试精通

通过这本书我们可以对 游戏软件测试有一定的了解,共同学习进步。

2013-04-02

direct 9.03D 游戏引擎代码

这是比较全面的direct 3D 游戏引擎代码希望和大家分享一下

2012-12-02

direct9.0 3d 游戏引擎开发

这是一些direct9.0游戏开发引擎的一些代码,希望和大家分享一下,共同进步。里面有一些简单的例子,比如光照,图元,材质等一些实例

2012-12-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除