自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 2021-10-08-小记1

距离上次更博已有近四年零4个月,回头再看当初的留下来的这点东西,心中难免有些许彷徨,听着许飞的《父亲写的散文诗》,再更新四年后的第一篇的博客,歌声和此时此刻的心情显得如此的相得益彰,确又不知道该从何说起,该说些什么,若按照时间算,四年的时间,本应该从社会大学毕业的我却和这个社会显的那么的格格不入,甚至比初入这个大环境显的更青涩,无奈,怯懦。前段时间由于出差,机场路过书店,买了余华的《活着》,来来回回的飞机上读了好多遍,此间多次被小说的情节所吸引,也类目过多次,可是后来在读似乎对主人公本身的遭遇感觉没有当

2021-10-08 20:32:19 166

原创 MFC中皮肤库skin++的使用

一.使用皮肤1.将SkinPPWTL.lib 、skinppwtl.dll 、SkinPPWTL.h三个文件及相应皮肤(**.ssk)拷贝至工程文件夹下;一般还要将这些文件放在Debug文件夹下。2.在StdAfx.h文件中加入#include "SkinPPWTL.h" 和#pragam comment(lib,"SkinPPWTL.lib")BOOL CSchoolApp:

2017-06-16 09:06:25 2145 1

原创 小米面试题

高频面试题——小米面试题

2016-07-31 23:22:49 910

原创 初识STL—图解六大组件及列式容器与关联式容器

STL是StandardTemplateLibrary的简称,标准模板库,惠普实验室开发的一系列软件的统称。它是由AlexanderStepanov、MengLee和DavidRMusser在惠普实验室工作时所开发出来的。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list,vector,set,map等,STL也是算法和其他一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。STL的目的是标准化组件,这样就不用重新开发,

2016-07-30 11:34:40 672

原创 排序(二)——冒泡排序及其改进

冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。

2016-07-30 09:45:35 520

原创 进程(二)——进程标识符&&进程位置

Linux下C程序生成主要由四个步骤组成:预编译、编译、汇编、链接。编译器gcc经过 预编译、编译、汇编3个步骤将源程序⽂文件转换成目标文件。如果程序有多个目标文件或程 序中使用了库函数,则编译器还需要将所有目标文件及所需的库文件链接起来,最后生成可执行程序。当程序执行时,操作系统将可执行程序复制到内存中,程序转为为进程通常需要以下步骤:内核将程序读入内存,为程序分配内存空间和内核为该进程保存PID及相应的状态信息,把进程放到运行队列中等待执行。程序转化为进程后就可被操作系统的调度程序执行了。进程的内存映像

2016-07-26 00:21:39 770

原创 排序(一)——排序的分类及比较

排序是计算机内经常进行的一种操作,其目的是将一组"无序"的记录序列调整为"有序"的记录序列。分内部排序和外部排序。若整个排序过程不需要访问外存便能完成,则称此类排序问题为内部排序。反之,若参加排序的记录数量很大,整个序列的排序过程不可能在内存中完成,则称此类排序问题为外部排序。内部排序的过程是一个逐步扩大记录的有序序列长度的过程。在此我们就针对内部排序——数据结构中的各种排序做一比较。

2016-07-25 15:11:33 582

原创 Linux内核的一种数据结构——task_struct

task_struct是Linux内核的⼀一种数据结构,它会被装载到RAM⾥里并且包含着进程的信息。 每个进程都把它的信息放在task_struct 这个数据结构⾥,task_struct对于对进程的了解及运行状态和处理机制有很大的作用。希望加深大家对它的理解。

2016-07-24 23:23:26 1172

原创 进程的概念&&进程的描述&&进程控制块(task_struct)

进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。

2016-07-24 06:54:52 893

原创 死锁的产生原因&&产生的必要条件&&处理方法

在多道程序中,虽可借助多个进程的并发执行来改善系统的资源利用率,提高系统的吞吐量,但可能发生一种危险——死锁。所谓死锁(Dadlock), 是指多个进程在运行过程中因竞争资源而造成的一种僵局(DeadlyEmbrace),当前这种进程处于这种僵持状态时,若无外力作用,他们都无法再向前推进

2016-07-23 23:22:48 886

原创 Linux下安装ncurces

网上关于安装ncurse的步骤特别复杂,今天查资料给大家提供一个相对简单的方法,一条命令搞定,希望对有需要的博友有所帮助。

2016-07-15 22:50:02 1259

转载 Linux下安装jsoncpp

Jsoncpp安装是一个熟悉Linux并在其环境下实现编程的程序员必不可少的,这是我从网上找到的安装方法,并且已成功安装,希望对初次接触Jsoncpp的初学者有所帮助。

2016-07-13 23:36:04 946

原创 Linux下调试工具gdb的安装

Linux下调试工具gdb的安装

2016-07-09 22:51:50 585

原创 Linux下安装g++调试工具

Linux下安装g++调试工具

2016-07-09 22:48:10 606

原创 E45: 'readonly' option is set (add ! to override)

E45: 'readonly' option is set (add ! to override)

2016-07-08 23:15:00 10888 1

原创 在准备秋招之前就前辈们的简历制作,面试经验等做一总结

{在准备秋招之前就前辈们的简历制作,面试经验做一总结}写简历的要求 1.内容与所招聘的岗位匹配。2.措辞具体完整,真实的呈现自己胜任能力(亮化能力)。 3.模板简单,易于阅读。 4.手机号码,邮箱,性别(可写可不写),姓名(注:培训经历,籍贯,名族,身体状况, 婚姻状况,邮编,住址都不要) ,教...

2016-07-07 23:14:46 1927 1

原创 宏定义实现一个int型的数的奇偶位的互换

用一个宏实现一个int型数的奇偶位的互换并且输出互换后这个二进制位所表示的数。

2016-07-07 20:59:49 660

原创 Linux下cp(文件及目录复制)命令的总结

每一种操作系统都有成千上万的文件组成,对于linux这样“一切皆文件”的操作系统来说更不例外,大家应该都能很轻松使用windows下的文件查找功能,但是对linux这一功能可能并不是很熟悉,其实想玩linux的你更要牢牢掌握这个命令,因为linux不像windows那样有固定的文件名后缀,并且因为linux阵营下百家争鸣的特性,一个相同的文件在不同的发行版,可能会有不同,所以如果你能牢牢掌握cp命令的使用,你在摸索linux的道路上将会顺利很多,同时你会发现linux下文件查找功能其实很简单,而且要比win

2016-07-03 23:55:18 5640 2

原创 Linux下find(文件查找)命令的总结

每一种操作系统都有成千上万的文件组成,对于linux这样“一切皆文件”的操作系统来说更不例外,大家应该都能很轻松使用windows下的文件查找功能,但是对linux这一功能可能并不是很熟悉,其实想玩linux的你更要牢牢掌握这个命令,因为linux不像windows那样有固定的文件名后缀,并且因为linux阵营下百家争鸣的特性,一个相同的文件在不同的发行版,可能会有不同,所以如果你能牢牢掌握find命令的使用,你在摸索linux的道路上将会顺利很多,同时你会发现linux下文件查找功能其实很简单,而且要比w

2016-06-28 23:12:28 1615

原创 Linux下调试工具gdb的使用方法

没有十全十美的人,要想进步,就得一步一个脚印,程序也一样,没有最好,只有更好,要想让自己的代码脱颖而出,让自己的代码最好,调试是必备的,要想一步就写出最好的代码是不可能的,就像人不可能一步就成功的。掌握调试技巧就显得尤为重要了,本文介绍了Linux下gdb调试工具的使用方法。希望对各位有所帮助!

2016-06-21 23:44:10 493

原创 Linux的vi模式下的快捷键

在vi下如何提高自己的效率?如何脱颖而出?如何使得自己成长为一名极客?15条命令告诉你这里就是你成功的起点,告诉你编程不但有速度更有激情。

2016-06-20 00:28:05 661

原创 0-时间复杂度&空间复杂度的计算

同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程序的效率。算法分析的目的在于选择合适算法和改进算法。算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。时间复杂度常用大O符号表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是渐近的,它考察当输入值大小趋近无穷时的情况。

2016-06-15 23:32:37 756

原创 android手机App的开发——音乐播放器

在如今这个生活节奏越来越快的社会,科技的发展也越来越智能化。而手机的智能化就是一个很好的体现,现在内地市场上比较主流的手机系统是Android,Android是一个开源系统,它的底层是基于Windows操作系统。这次的音乐播放器采用了Android的开源系统,用java语言和Eclipse Jdk的编程工具进行编写的,同时也给出了比较详细的系统开发过程,部分界面图。本设计中音乐播放器集播放,暂停,背景音乐,划屏,显示划屏坐标等功能。有良好的性能,能在android手机上独立运行。

2016-06-14 12:36:20 5714 2

转载 虚拟机,网络模式简介及桥接模式设置

虚拟机网络模式无论是vmware,virtual box,virtual pc等虚拟机软件,一般来说,虚拟机有三种网络模式:1.桥接2.NAT3.Host-Only哪一种网络是适合自己的虚拟机呢?

2016-06-02 13:02:31 498

原创 高频面试题之三种方法实现两个栈实现一个队列

两个栈实现一个队列既然称为高频面试题,肯定考察的方面特别全,而且对面试者对细节方面的处理也很到位,两个栈实现一个队列在数据结构中看似很简单的算法,实则不然,这里面包含了很对细节方面的处理以及问题是否考虑周到的问题。这里用三种方法实现了这个问题,层层递进,既有大众方法,也有变种方法,可以说是全面的解决了这个问题。

2016-05-29 13:28:00 611

原创 assert和if使用的环境及使用场景

在刚开始学习代码的时候,对于程序中检查程序有效性时有时用到assert,有时用if,感到非常困惑。比如,在多数的malloc函数后面对指针进行的操作都是用assert进行检查的,可能会造成一种错觉以为在malloc之后对申请空间的检测是用assert进行的,但可能也会看到用if对malloc进行判断并处理,到底是if还是assert呢?以及release和debug环境下两者会起到什么效果呢?

2016-05-28 23:18:20 2391 1

原创 一个90%程序员写不对的算法——二分查找

一个90%的程序员写不对的程序,一个面试高频出现的面试题,一个开发中用之甚广的算法,一个最能体现程序员素质的代码,它就是二分查找。

2016-05-19 23:54:23 812

原创 C++中如何正确的开辟一个动态的二维数组

如何定义一个二级指针,看似每个有点C语言基础的人觉得自己都可以很容易完成,但要正确的完成并且说的明白其中道理不见得就那么多。正确的理解数组指针和指针数组是关键。

2016-05-18 23:53:22 23602 5

原创 shared_ptr造成的循环引用&&解决方法和原理(弱引用&&强引用)

内存泄漏及浪费都是每个程序员非常忌讳的事情,但是稍有不慎就会造成不可弥补的损失,这里就这能指针sheard_ptr造成的循环引用及造成循环引用的原因我给大家给出了详细的图解及举例说明,同时也提供了避免这种循环引用的解决办法,就针对弱引用这一点做出了详细的解释,就针对shared_ptr和weak_ptr这两种智能指针的作用和用法也相加说明使得读者可以从代码及图例两方面对循环引用及解决办法有更深的认识。

2016-04-28 00:45:12 11626

原创 (继承及其访问限定符)&&(派生类及其默认成员函数)&&(赋值兼容规则)

◆继承:  ★继承概念继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能。这样产生新的类,称派生类。继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。C++继承分为公有继承(public)、私有继承(private)、保护继承(protected)是常用的三种继承方式。在C++语言中,一个派生类可以从一个基类派生,也可以从多个基类派生。从一个基类派生的继承称为单继承;从多个基类派生的继承称为多继承。

2016-04-25 16:05:57 3548

原创 函数模板与模板函数及模板类与模板的特化

函数模板( Function templates)模板(Templates)使得我们可以生成通用的函数,这些函数能够接受任意数据类型的参数,可返回任意类型的值,而不需要对所有可能的数据类型进行函数重载。这在一定程度上实现了宏(macro)的作用。它们的原型定义可以是下面两种中的任何一个:template <class identifier> function_declaration;template <typename identifier> function_declaration;上面两种原

2016-04-25 00:07:50 3854

原创 深入理解运算符重载

函数自定义类的 赋值运算符重载函数的作用与内置纷纷投赋值运算符的作用类似,但是要注意的是,它与 拷贝构造函数与析构函数一样,要注意深拷贝浅拷贝的问题,在没有深拷贝浅拷贝的情况下,如果没有指定默认的赋值运算符重载函数,那么系统将会自动提供一个赋值运算符重载函数。运算符重载的声明方式与方法的声明方式相同,但operator 关键字告诉 编译器,它实际上是一个运算符重载,后面

2016-04-23 01:18:42 1237

原创 深入理解虚表之非虚拟继承及虚拟继承

在C++语言中,每个有 虚函数的类或者虚继承的子类,编译器都会为它生成一个虚拟函数表(简称:虚表),表中的每一个元素都指向一个虚函数的地址。(注意:虚表是从属于类的)此外,编译器会为包含虚函数的类加上一个成员变量,是一个指向该虚函数表的指针(常被称为vptr),每一个由此类别派生出来的类,都有这么一个vptr。虚表指针是从属于对象的。也就是说,如果一个类含有虚表,则该类的所有对象都会含有一个虚表指针,并且该虚表指针指向同一个虚表。虚表的内容是依据类中的虚函数声明次序--填入函数指针。派生类别会继承基础类别的

2016-04-16 09:52:57 1218

原创 玩坏你的C盲舍友!

一段小代码玩坏你的C盲舍友,从此友谊的小船说翻就翻

2016-04-15 23:21:03 468

空空如也

空空如也

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

TA关注的人

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