![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
C/C++
刘小通通
这个作者很懒,什么都没留下…
展开
-
QPainter 绘制圆角矩形 drawRoundRect详解
不废话!!!!!!函数原型为:/*Draws a rectangle r with rounded corners.The xRnd and yRnd arguments specify how rounded the corners should be. 0 is angled corners, 99 is maximum roundedness.A filled rectangle has a size of r.size(). A stroked rectangle has a siz原创 2021-12-23 22:01:30 · 14819 阅读 · 2 评论 -
C++ 工厂模式
文章目录上节回顾一、工厂模式介绍二、场景分析三、代码展示四、优缺点优点缺点上节回顾在上一章我们讲到了简单工厂模式,在简单工厂模式中,我们可以传入参数决定需要的对象类型,根据客户端选择实例化相关的类,对客户来说除去了产品的依赖,不用关心具体的对象是怎么实例化的,但同时缺点也存在,当我们想增加新的商品时候,不得不修改工厂类,在工厂类中增加对象的实例方法,违背了开放封闭原则。由此诞生了工厂模式。一、工厂模式介绍工厂模式定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使类的实例化延迟到其子原创 2020-12-24 17:23:02 · 331 阅读 · 3 评论 -
C++ 简单工厂模式
文章目录介绍场景分析二、代码展示简单工厂的优点和缺点优点缺点总结介绍简单工厂模式是属于创建型模式(工厂模式、抽象工厂模式、单例模式、建造者模式),又称之为静态工厂模式,它不属于23中设计模式之一,在简单工厂中可以根据参数的不同返回不同类的实例,简单工厂模式专门定义了一个工厂类来创建其他类的实例(其他类有一个共同的基类,使用了多态),简单工厂模式是工厂模式中最简单使用的一种模式。场景分析当我们去超时购物的时候,收银员可以扫描不同的商品,可以显示出不同的价格,我们可以把商品看做是一个基类,当扫原创 2020-12-24 17:07:04 · 431 阅读 · 1 评论 -
C语言文件读写
文章目录前言一、文件的打开(fopen函数)二、文件关闭(fclose函数)三、C中文本文件和二进制文件的区别四、C语言以字符形式读写文件五、C语言以字符串形式读写文件六、C语言中的文件复制操作七、C语言中文件常用的函数八 、文件加解密九、文件的重命名和删除总结前言提示:在C语言中,文件操作都是由库函数来完成的,下面总结下文件的相关操作。一、文件的打开(fopen函数)fopen()函数用来打开一个文件,它的格式为:FILE *fopen(char *filename,char *type);原创 2020-12-24 14:55:51 · 660 阅读 · 0 评论 -
C++和C语言对于const的区别
在C++中const是一个真的常量,但是C语言中const是一个假的常量const int a = 10; int *p = (int *)&a; *p = 20; printf("a = %d\n",a);上述代码在C语言中,a = 20,但是C++ 中 a = 10;c++中定义const时候,a放入到符号表中使用,当定义p指向a的时候,C++重新为a分配了一个空间,将p指向了新的a的空间,从而修改p的值,和新空间中a的值,但是符号表中a的值没有发生变化,如下图所示:const原创 2020-12-24 13:50:11 · 125 阅读 · 0 评论 -
Windows下切换进程用户名为当前用户名,而不是SYSTEM
在windows操作系统中,某些情况下,我们需要将程序以管理员身份启动,通过任务管理器我们可以看到程序的持有者,如下图所示:使用SYSYTEM权限启动的程序,理论是不可以访问到当前用户下的部分目录,这个时候我们可以在必要时候切换成武到当前用户权限,使用后切换为SYSTEM。首先判断用户名是不是SYSTEMbool CurrentUserIsLocalSystem() //判断用户名是不是SYSTEM{ BOOL bIsLocalSystem = FALSE; PSID p原创 2020-11-23 14:31:02 · 1403 阅读 · 1 评论 -
VC中的char和LPWSTR类型转换
tchar ->>>> charchar* TCHAR2char(TCHAR* tchStr) { int iLen = 2*wcslen(tchStr); char* chRtn = new char[iLen+1]; wcstombs(chRtn,tchStr,iLen+1); return chRtn; } char ->>>>>>> LPWSTRLPWSTR ConvertCharToLP原创 2020-11-23 14:07:32 · 1234 阅读 · 0 评论 -
<climits>头文件定义的符号常量及使用
climits 定义了符号常量,这里总结了部分常用是:符号常量表示CHAR_BITchar的位数INT_MAXint的最大值LONG_MAXlong的最大值SHAR_MAXshort的最大值LLONG_MAXlong long 的最大值CHAR_MAX,CHAR_MINchar的最大值和最小值SCHAR_MAX,SCHAR_MINsigned char的最大值和最小值UCHAR_MAX,UCHAR_MINunsigned cha原创 2020-11-19 14:04:21 · 748 阅读 · 0 评论