- 博客(36)
- 收藏
- 关注
原创 C++友元知识点详解
1.何为友元?类可以允许其他类或者函数访问它的非公有成员,方式是令其他类或者函数成为它的友元(需要用到friend关键字)。2.友元分类3.非成员函数作为友元函数示例代码结构如下:#ifndef STUDENT_HPP#define STUDENT_HPPclass Student {public: friend void ModifyAge( Student &stu, int value ); Student():age(18){}
2022-04-06 20:16:59
1932
原创 C++类定义中名字的查找规则
1.在了解类定义中,名字的查找规则之前,我们先来了解下普通的名字查找规则当前作用域中查找,只考虑在名字使用之前出现的声明 外层作用域中查找 没找到,报错代码示例:void PrintValue(){ printf("%d\n",a); // 这里会报错,因为a的定义出现在函数的后面}int a = 100;int main( void ){ PrintValue(); return 0;}int a = 100;void PrintValue(){
2022-03-13 17:29:03
1484
原创 VMware ESXi安装完系统以后,鼠标无法使用问题
环境:软件 版本 esxi 7.0 centos 6.5(桌面版) 问题描述:在web页面下,使用esxi安装完centos6.5,启动centos6.5进入桌面环境后,发现鼠标左键无法使用。解决方案:碰到这个问题,搜了很多方法都无效,最后算是误打误撞解决了。1.安装VMware Tools网上的教程说 安装VMware Tools以后,鼠标就可以使用了,但是对于我碰到的情况,不管用!!!2.在虚拟硬件中添加USB控制器...
2021-06-16 18:38:33
13604
2
原创 ubuntu20.04server版下载
https://ubuntu.com/download/server进入页面以后,可以看到如下图所示:点击箭头所只指向的内容,就可以开始下载了。
2021-06-16 17:13:54
1955
原创 redis指定配置文件启动
redis-server /绝对路径/to/redis.conf指定的配置文件最好使用绝对路径,不要使用相对路径!
2020-07-10 19:10:57
10467
5
原创 redis:Could not connect to Redis at 127.0.0.1:6379: Connection refused错误解析
1.错误信息思考:根据错误信息的字面意思,可以知道,redis-cli客户端程序,通过ip127.0.0.1,端口6379与redis服务器建立连接失败。说明当我们调用redis-cli时,默认是用本地回环地址去与服务器端建立连接。2.解决问题思路:服务器程序会在监听一个套接字(IP+端口号),等待客户端的连接。一般运行服务器程序的时候,都会加载一个配置文件。redis服务器也会读取一个配置文件。如果不知道配置文件在哪里,可以使用:which redis.conf #或者whe
2020-07-10 19:08:09
87183
8
原创 Ubuntu16.04 /etc/rc.local配置的程序,不能开机自启动
可能由于某些不可描述的原因,清除了/etc/rc.local文件的执行权限位。给/etc/rc.local文件添加执行权限位:chmod 755 /etc/rc.local (root权限下)reboot重启系统后,不出意外,应该是可以达到开机自启动了。...
2020-06-01 18:55:42
803
原创 Ubutun16.04安装和使用daemontools
1.前期准备工作 说明:与任何其他软件一样,daemontools不提供担保。 系统要求: daemontools只能在UNIX下工作。 下载流程(root权限下): mkdir -p /package chmod 1755 /package cd /package2.下载和安装进入到package后,下载daemontools 的安装包:wgethttps://cr.yp.to/daemontools/daemontools-0.76.t...
2020-06-01 18:22:15
1109
转载 Windows10安装mysql8.0
1:首先去官网下载安装包注意这里下载的是zip压缩包,并且选择64位。2:将解压文件解压到你安装的目录:E:\mysql-8.0.11-winx64 (我这是放在E盘根目录,不要放在有中文名字和空格的的目录下。3:在mysql-8.0.11-winx64文件夹下面新建一个my.ini文件和一个data文件夹这里需要注意创建的.ini文件,创建完成之后要确定该文件的后缀为配置...
2019-11-24 20:18:56
108
转载 centos6.5安装mysql
在浏览此文章之前,请确保你的centos版本为6,如果是7以上的版本,出门左走不送。第一步:查看服务器上面是否已经安装了mysql数据库。执行命令:rpm -qa | grep mysql第二步:如果第一步已经检查出系统已经安装了mysql数据库,先把原来的系统里面的mysql数据库干掉。如果系统里面安装了mysql数据库。那么要删除原来的数据库。rm命令。第三步:通...
2019-11-24 16:42:38
108
转载 libevent安装及简单的使用
前言 首先我阅读的版本是libevent-1.4.14b-stable版本。1.4系列虽然比较古老,但是它的源码相对简单,便于学习,并且主要的思想与2.0系列是一致的。附上官网链接:http://libevent.org/安装及简单使用libevent 接下来我们直接进入正题,安装libevent-1.4。1. 在官网上下载对应版本的包2. tar -zxvf ...
2019-11-17 11:06:58
463
转载 【动态规划】01背包问题(通俗易懂,超基础讲解)
https://blog.csdn.net/qq_38410730/article/details/81667885
2019-10-25 17:42:36
315
转载 算法导论------渐近记号Θ、Ο、o、Ω、ω详解
https://blog.csdn.net/so_geili/article/details/53353593
2019-10-25 17:41:07
308
转载 算法的时间复杂度解惑
前言算法很重要,但是一般情况下做移动开发并不经常用到,所以很多同学早就将算法打了个大礼包送还给了老师了,况且很多同学并没有学习过算法。这个系列就让对算法头疼的同学能快速的掌握基本的算法。过年放假阶段玩了会游戏NBA2K17的生涯模式,没有比赛的日子也都是训练,而且这些训练都是自发的,没有人逼你,从早上练到晚上,属性也不涨,但是如果日积月累,不训练和训练的人的属性值就会产生较大差距。这个突然让我意...
2019-10-25 17:31:51
213
转载 UML学习入门就这一篇文章
1.1 UML基础知识扫盲UML这三个字母的全称是Unified Modeling Language,直接翻译就是统一建模语言,简单地说就是一种有特殊用途的语言。你可能会问:这明明是一种图形,为什么说是语言呢?伟大的汉字还不是从图形(象形文字)开始的吗?语言是包括文字和图形的!其实有很多内容文字是无法表达的,你见过建筑设计图纸吗?里面还不是很多图形,光用文字能表达清楚建筑设计吗?在建筑界,...
2019-10-25 17:14:27
141
转载 希尔排序--简单易懂图解
图解算法---希尔排序前情回顾:直接插入排序(对插入排序不熟悉的建议先阅读此文)一天,一尘拿着扑克自己在那玩,刚被师傅看见了首先它把较大的数据集合分割成若干个小组(逻辑上分组),然后对每一个小组分别进行插入排序,此时,插入排序所作用的数据量比较小(每一个小组),插入的效率比较高可以看出,他是按下标相隔距离为4分的组,也就是说把下标相差4的分到一组,比如这...
2019-10-22 14:44:15
450
转载 哈弗曼树的原理和构造方法以及带权路径计算
哈弗曼树的原理和构造:https://blog.csdn.net/qq_29519041/article/details/81428934带权路径计算:https://blog.csdn.net/xueba8/article/details/78477892
2019-10-22 14:40:12
209
转载 epoll原理详解及epoll反应堆模型
转载两篇大牛的原创文章。https://blog.csdn.net/daaikuaichuan/article/details/83862311 这篇文章最后给出了一个完整代码实现,也是libevent的核心思想。https://blog.csdn.net/qq_36359022/article/details/81355897...
2019-10-13 10:34:18
237
原创 C++Primer第五版课后答案
第一章:开始 https://github.com/huangmingchuan/Cpp_Primer_Answers/blob/master/ch01/README.md第二章:变量和基本类型 https://github.com/huangmingchuan/Cpp_Primer_Answers/blob/master/c...
2019-09-30 16:47:50
843
转载 C++中初始化和赋值的区别
折腾我挺长一段时间,基本挺明白了,先来个区别说明:赋值操作是在两个已经存在的对象间进行的,而初始化是要创建一个新的对象,并且其初值来源于另一个已存在的对象。编译器会区别这两种情况,赋值的时候调用重载的赋值运算符,初始化的时候调用拷贝构造函数。如果类中没有拷贝构造函数,则编译器会提供一个默认的。这个默认的拷贝构造函数只是简单地复制类中的每个成员。 下面看例子。c++中初始化和赋值操作差别是很大...
2019-09-10 17:09:05
867
转载 转---原码,反码,补码的深入理解与原理。
/*最近在重新学习一遍C语言,以更加深入的理解C语言,为C++打下比较坚实的基础。此次学习主要依据的书籍依然为《C Primer plus》中文版 第五版。至此,我创建了C/C++这一个分类,用以记录学习C/C++的过程,不断提高自己。*/ 在前面的两章的学习中,并未遇到很大的问题。其中的一个就是关于变量,变量名,声明,定义,初始化等的相关基础知识,这点会在下一篇的文章中进行讲解...
2019-09-08 23:39:09
203
转载 time_wait状态产生的原因,危害,如何避免
先上TCP的状态变迁图1. time_wait状态如何产生?由上面的变迁图,首先调用close()发起主动关闭的一方,在发送最后一个ACK之后会进入time_wait的状态,也就说该发送方会保持2MSL时间之后才会回到初始状态。MSL值得是数据包在网络中的最大生存时间。产生这种结果使得这个TCP连接在2MSL连接等待期间,定义这个连接的四元组(客户端IP地址和端口,服务端IP地址和端口...
2019-08-06 11:55:14
250
转载 TCP带外数据
在看I/O多路转接部分时,看到select函数将带外数据归入了异常条件集中,不是很明白带外数据,就在网上找到了这片文章,这片文章讲的比较清楚,所用到的程序也简单易懂,虽然程序中有一些不足,但是也是一篇不错的文章,所以转载mark一下。原文链接:https://www.cnblogs.com/c-slmax/p/5553857.htmlTCP带外数据传输层协议使用带外数据(out-of-...
2019-07-09 15:41:30
146
转载 线程同步中,条件变量和互斥量如何一起使用。
本片文章属于转载,原文出处:https://www.cnblogs.com/lang5230/p/5686868.html。多线程代码问题描述我们都知道,进程是操作系统对运行程序资源分配的基本单位,而线程是程序逻辑,调用的基本单位。在多线程的程序中,多个线程共享临界区资源,那么就会有问题:比如#include <pthread.h>#include <unis...
2019-06-27 11:15:23
403
原创 vim设置完背景颜色以后,一翻页就出现白色区域的解决办法。
在设置完vim背景颜色以后,用vim编辑代码的时候,发现翻页过程中,代码中会出现亮白色区域,如下图所示: 解决办法是在系统中的vim配置文件中添加一行代码:本人使用的系统,vim的配置文件在/etc/vimrc文件中在该文件的末尾添加如下代码:set term=screen-256color问题就解决了。...
2019-01-10 18:35:16
1363
原创 Centos7中给eclipse创建桌面快捷方式
首先我们需要切换到root用户来登陆桌面管理系统。方法是:vi /etc/gdm/custom.conf然后在[daemon]下面添加:[daemon]AutomaticLoginEnable=TrueAutomaticLogin=root #你想自动登录的用户名保存并重启,重启的时候已经以root用户登录了。 下面在root用户的桌面环境下,给eclipse创...
2018-12-13 16:20:25
2860
原创 Centos7安装的eclipse,如何支持C++11新特性,例如shared_ptr智能指针等。
在Centos7系统的终端环境下,当编写C++程序用到C++11新特性时,可以再编译的时候添加-std=c++11。在eclipse IDE中,我们该如何使用C++11新特性?这里我用自己创建的Test项目为例做简要说明。鼠标移动到Test项目上,单机鼠标右键,滑动到最下面有一个Properties,点击该选项。Properties->C/C++ Build->Sett...
2018-12-13 14:55:46
590
转载 centos7安装eclipse进行C/C++开发详解
本文属于转载,在转载的文章上加入了自己安装过程中,碰到的问题的解决方案。原贴地址:https://blog.csdn.net/u011345885/article/details/51871435需要下载jre,eclipse,cdt。下文中的所有安装流程都是在root权限下完成的。1.首先下载jre( java se runtime environment),jre是运行java...
2018-12-13 14:22:15
1553
原创 centos7如何设置vim背景颜色,vim配置文件中set bg=dark也改变不了的解决方案。
本人新装的centos7系统,在实际使用中,vim背景色是白色的,在vim配置文件中使用set bg=dark,背景颜色还是白的。解决方法下面将。1.使用命令: cd /etc 进入配置目录(我是用系统vimrc直接在etc目录中,配置目录也可能是在/etc/vim中)2.sudo vim vimrc3.在vimrc文件的尾部添加自己的配置:保存配置,并退出。发现在配置文件...
2018-11-20 13:57:17
10572
3
转载 C++中类的拷贝构造函数的参数类型必须是引用解惑。
在C++中, 构造函数,拷贝构造函数,析构函数和赋值函数(赋值运算符重载)是最基本不过的需要掌握的知识。 但是如果我问你“拷贝构造函数的参数为什么必须使用引用类型?”这个问题, 你会怎么回答? 或许你会回答为了减少一次内存拷贝? 很惭愧的是,我的第一感觉也是这么回答。不过还好,我思索一下以后,发现这个答案是不对的。原因: 如果拷贝构造函数中的参数不是一个引用,即形如CCl...
2018-11-15 10:24:02
2105
4
转载 python3+django+mysql如何连通使用。
python3中使用mysql报错ModuleNotFoundError: No module named 'MySQLdb'。原因是:在python2.x中用mysqldb,但是在python3.x中已经不支持那个组件了。取而代之的是:pymysql。首先使用pip install pymysql 安装pymysql。下载以后,如何让当前的 Django 通过 PyMySQL 来连接 MySQ...
2018-07-12 10:58:03
390
转载 CentOS7安装MySQL
在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。1 下载并安装MySQL官方的 Yum Repository[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noar...
2018-07-11 18:54:32
126
转载 解决nginx+uwsgi部署Django的所有问题
最近,自己暑假写的小项目也算完毕了,想着投放到自己云服务器上,本来以为只要打开端口运行python3 manager runserver 0.0.0.0:80就搞定了,最后才知道这只适用于Django的开发模式,只支持单用户访问,既然如此,那么就得需要web服务器进行部署了。我便使用了nginx。nginx?为什么是nginx?首先我觉得它小,很轻量级,用着简便,没有apache那么庞杂,并且网上...
2018-07-11 18:06:44
494
1
转载 【Nginx安装】CentOS7安装Nginx及配置
Nginx是一款轻量级的网页服务器、反向代理服务器。相较于Apache、lighttpd具有占有内存少,稳定性高等优势。**它最常的用途是提供反向代理服务。**安装 在Centos下,yum源不提供nginx的安装,可以通过切换yum源的方法获取安装。也可以通过直接下载安装包的方法,**以下命令均需root权限执行**: 首先安装必要的库(nginx 中gzip模块需要 zlib 库,r...
2018-07-11 17:13:55
204
转载 centos7 python2.7升级python3.6
今天在CentOS7.2上将python2.7升级至python3.6时遇到了诸多问题,下面将升级步骤以及解决方法一一列举。1.安装Python3.6安装准备,这里应该切换到超级用户。mkdir /usr/local/python3wget --no-check-certificate https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tg...
2018-07-11 13:23:58
901
1
转载 virtualenv隔离python环境。
在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4。所有第三方的包都会被pip安装到Python3的site-packages目录下。如果我们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python 3。如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办?这种情况下,每个应用可能需要各自拥有一套“独立”的Pytho...
2018-06-08 15:07:38
165
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人