自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (3)
  • 收藏
  • 关注

原创 泛型编程之迭代器 Iterators

接触迭代器主要是在接触和使用STL时候开始的。作为泛型编程的良好实践,STL的迭代器有着非常显著的代表性。最初,我并不了解迭代器的作用,甚至一直很排斥使用它。但随着逐步开始了解STL,慢慢开始了解了迭代器的意义以及重要性。本文主要是就自己所学所了解做一个简单的整理。本文内容参考整理自《泛型编程与STL》。一、迭代器的重要性迭代器,又称作泛型指针。顾名思义,迭代器就是模仿指针来实现的。有

2015-04-02 20:55:27 879

原创 C和C++哪个更快?

身边的人一般说道这个问题,总会马上第一个回应我,C语言的速度更快。但实际上,这个问题并不是可以这样单纯的来回答的。下面就我个人的一些体会以及看书时了解的内容,对这个问题做一个粗浅的整理和总结。如有疏漏,欢迎指出。一、什么是C,什么是C++说起来,我觉得这是一个非常难以回答的问题。因为我们在这样说的时候,已经暗含了默认常规的C代码不属于C++的意思。但由于C++对C的兼容,实际上C语言实现的

2015-02-02 13:15:40 16662 5

原创 编写可读代码(三) 如何编写注释

记得在学习编程伊始,就被一直强调着注释的作用,甚至我还听说有的老师会强制要求学生注释(比方说每个变量必须注释)。诚然,合理恰当的注释有助于别人快速理解我们的代码,也有助于长时间后重拾自己的代码,但不合理的注释往往会浪费我们的时间,甚至为理解代码带来障碍。一、注释的作用1,交代代码外的信息通过注释,我们可以了解一些代码外的信息,如作者,授权信息等,这有利于我们合法的使用源代码。2

2015-02-01 20:16:29 765

原创 编写可读代码(二) 如何命名

记得看到过一个调查,说程序员最头疼的事情是什么,最后票数最高的是Naming things(http://kb.cnblogs.com/page/192017/)。从中不难看出,命名这件往往被初学者忽略的事情,其实是编写代码中非常非常重要的一环。一个良好的命名,能使自己在写代码过程中的思路更加清晰,可以省却很多不必要的注释,也可以让代码变得更加易读。下面就我个人的一些体验以及阅读《编写可读代码

2015-01-25 03:00:52 1035

原创 编写可读代码(一) 命名方法和命名规范

计算机编程中主要有四种命名法则匈牙利命名法、下划线命名法、帕斯卡命名法和骆驼命名法。一、匈牙利命名法据说这种命名法是一位叫 Charles Simonyi 的匈牙利程序员发明的,后来他在微软呆了几年,于是这种命名法就通过微软的各种产品和文档资料向世界传播开了。大部分程序员不管自己使用什么软件进行开发,或多或少都使用了这种命名法。这种命名法的出发点是把变量名按:属性+类型+对象描述的顺序组合

2015-01-18 16:44:42 4561

原创 大端模式、小端模式及其在Qt中的转换

大端模式和小端模式是计算机中经常涉及到的两种字节序,也有大端对齐、小端对齐、大尾、小尾等叫法。一、起源说起这两种模式,就不得不提一下大端(Big-endian)和小端(Little-endian)这两个英文上的起源。“endian”一词来源于乔纳森·斯威夫特的小说格列佛游记。Lilliput和Blefuscu这两个强国在过去的36个月中一直在苦战。战争的原因:大家都知道,吃鸡蛋的时候,

2015-01-11 19:47:48 30558 1

原创 struct内存对齐

出于速度和空间的考量,编译器在实现过程中均会采用对struct内的变量进行内存对齐的操作,虽然会有一定的空间浪费,却可以减少在读取数据时候的读取操作。先看下面的例子struct A{ char a; int b;};int main(){ cout << "size of A:"<<sizeof(A)<<"bytes" << endl; return

2015-01-01 21:40:07 430

Huffman Compress 霍夫曼编码 压缩 解压缩 QT

基于Qt实现的霍夫曼编码的压缩解压缩程序。压缩、解压缩采用单独一个线程,ui界面一个线程。

2014-11-25

一个基于Qt的俄罗斯方块

闲来无事自己随便写了一个俄罗斯方块。整个地图用21个int整数来实现,每个方块由四个int来构成。通过整数的移位、位与、位或运算来实现方块的移动、判断等。

2014-10-28

一个基于QT的自动检测本机IP并邮件的程序

没事写了一个小程序,主要是检测本机的ip地址(内网IP,v6IP,以及外网IP),将其发送到指定邮箱。并且当电脑IP发生变化后自动将新的IP发送。内网IP、v6IP都可以直接检测,外网IP采用的是向查询IP网站请求,然后从页面中提取所需的IP地址的办法。发邮件是采用的SMTP的发送方式,测试新浪邮箱有效,其他邮箱未测。利用这个软件,再在家里路由器上配个端口映射,就可以随时从外网访问自己家里的电脑了。

2014-01-31

空空如也

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

TA关注的人

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