自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

System Architect

Struggling

  • 博客(52)
  • 资源 (3)
  • 收藏
  • 关注

转载 C++语言的15个晦涩特性

这个列表收集了 C++ 语言的一些晦涩(Obscure)特性,是我经年累月研究这门语言的各个方面收集起来的。C++非常庞大,我总是能学到一些新知识。即使你对C++已了如指掌,也希望你能从列表中学到一些东西。下面列举的特性,根据晦涩程度由浅入深进行排序。1. 方括号的真正含义2. 最烦人的解析3.替代运算标记符4. 重定义关键字5. Placement new6.在声明变量的同时进行分支7.

2013-12-30 12:50:23 653

转载 C++实现线程安全的单例模式

废话不多说,常用的代码积淀下来。一、懒汉模式:即第一次调用该类实例的时候才产生一个新的该类实例,并在以后仅返回此实例。需要用锁,来保证其线程安全性:原因:多个线程可能进入判断是否已经存在实例的if语句,从而non thread safety.使用double-check来保证thread safety.但是如果处理大量数据时,该锁才成为严重的性能瓶颈。1、静态成员实

2013-12-27 11:17:14 763

转载 java中静态属性,静态方法和静态初始化器

static称为静态修饰符,它可以修饰类中的属性和方法。  1.静态属性  被static修饰的属性称为静态属性,这类属性一个最本质的特点是:它们是类的属性,而不属于任何一个类的具体对象。换句话说,对于该类的任何一个具体对象而言,静态属性是一个公共的存储单元,任何一个类的对象访问它时,取到的都是相同的数值,同样任何一个类的对象去修改它时,也都是在对同一个内存单元做操作。  静态属性节省

2013-12-27 10:22:47 6740

转载 RHEL 5基础篇—Linux常用命令参考手册

Linux常用命令参考手册   为了大家方便查阅某些命令的用法,作者在此列举了linux系统管理的一些常见命令。包括了命令的详细参数及选项,。关于各命令的更多选项及详细用法,请参考man手册,这里只做简单的介绍。文章中的命令格式约定如下:   ““[]”部分表示可选项或参数。关机与重启   1)shutdown命令——至指定时间正常结束所有进程并关闭或重启系统。

2013-12-26 19:10:00 1371

转载 C++中引用(reference)的用法详解

C++中引用(reference)的用法详解TOC1.简介2.引用的语法3.引用使用技巧    3.1 引用和多态    3.2 作为参数    3.3 作为返回值    3.4 什么时候使用引用4. 参考资料1.简介    引用是C++引入的新语言特性。从语意上来说,引用就是一个变量的别名,就好象古代人的“字”和“号”,东坡

2013-12-26 18:22:52 21969 1

转载 保护眼睛的Windows、PDF和IE、Firefox、谷歌等浏览器颜色设置

保护眼睛的Windows和IE、Firefox、谷歌等浏览器颜色设置      长时间在电脑前工作,窗口和网页上的白色十分刺眼,眼睛很容易疲劳,也容易引起头痛,其实我们可以通过设置Windows窗口和软件的颜色设置保护自己的眼睛,总结网上的设置,自己觉得下面是最优的颜色设置方案。眼科专家建议保护眼睛的颜色为:色调:85,饱和度:123,亮度:205。这个颜色就是柔和的豆沙绿色,这个颜色看着

2013-12-25 11:07:14 9289 1

转载 QListWidget、QTreeWidget 和 QTableWidget

现在我们从最简单的 QListWidget、QTreeWidget 和 QTableWidget 三个类开始了解最简单的 model/view 的使用。这部分内容的确很难组织。首先,从最标准的 model/view 开始,往往会纠结于复杂的代码;但是,如果从简单的 QListWidget、QTreeWidget 和QTableWidget 开始,由于这三个类都是继承自各自的 view 类,很难

2013-12-24 16:29:37 1472

转载 QT中的model/view

有时,我们的系统需要显示大量数据,比如从数据库中读取数据,以自己的方式显示在自己的应用程序的界面中。早期的 Qt 要实现这个功能,需要定义一个组件,在这个组件中保存一个数据对象,比如一个列表。我们对这个列表进行查找、插入等的操作,或者把修改的地方写回,然后刷新组件进行显示。这个思路很简单,也很清晰,但是对于大型程序,这种设计就显得苍白无力。比如,在一个大型系统中,你的数据可能很大,全部存入一个组件

2013-12-24 16:27:30 1328

转载 C++之容器

什么是容器 首先,我们必须理解一下什么是容器,在C++ 中容器被定义为:在数据存储上,有一种对象类型,它可以持有其它对象或指向其它对像的指针,这种对象类型就叫做容器。很简单,容器就是保存其它对象的对象,当然这是一个朴素的理解,这种“对象”还包含了一系列处理“其它对象”的方法,因为这些方法在程序的设计上会经常被用到,所以容器也体现了一个好处,就是“容器类是一种对特定代码重用问题的良好的解决方案”

2013-12-24 14:32:17 1102

转载 QTableWidget行选中/删除/添加行

1  均分各列 tableWidget->horizontalHeader()->setStretchLastSection(true); //就是这个地方 tableWidget->horizontalHeader()->setResizeMode(QHeaderView::Stretch);2   整行选中:ui.tableWidget->setSelectionBehavio

2013-12-24 10:55:44 51145 2

转载 C++面试中string类的一种正确写法

C++ 的一个常见面试题是让你实现一个 String 类,限于时间,不可能要求具备 std::string 的功能,但至少要求能正确管理资源。具体来说:能像 int 类型那样定义变量,并且支持赋值、复制。能用作函数的参数类型及返回类型。能用作标准库容器的元素类型,即 vector/list/deque 的 value_type。(用作 std::map 的 key_type 是更进一步的要

2013-12-23 19:34:10 870

转载 Linux 命令英文全称 (帮助记忆,让命令变的很简单)

Linux 命令英文全称 (帮助记忆,让命令变的很简单)/bin = BINaries/dev = DEVices/etc = ETCetera/lib = LIBrary/proc = PROCesses/sbin = Superuser BINaries/tmp = TeMPorary/usr = Unix Shared Resources/var

2013-12-21 14:07:24 1223

转载 详细讲解WIN7系统上Virtualbox4.2.8安装RedHat Enterprise Linux 6.4

详细讲解WIN7系统上Virtualbox4.2.8安装RedHat Enterprise Linux 6.4(一) 最近RHEL6.4出来了,从别人的百度网盘转存后用网盘客户端同步了一晚上ISO文件,办公电脑是Win7系统,于是装了Virtualbox4.2.8虚拟机来安装它。主要记录下中间Virtualbox,Redhat的网络和一些服务的配置。一、运行环境1.Host: HP

2013-12-21 14:03:54 3010

转载 C语言实现垃圾收集器

每当我倍感压力以及有很多事情要做的时候,我总是有这样一种反常的反应,那就是希望做一些其他的事情来摆脱这种状况。通常情况下,这些事情都是些我能够编写并实现的独立的小程序。一天早上,我几乎要被一堆事情给整疯了——我得看一本书、处理一些工作上的事情、还要准备一场Strange Loop的演讲,然后这时我突然想到:“我该写一个垃圾收集器了”。是的,我知道那一刻让我看上去有多疯狂。不过我的神经故

2013-12-20 12:33:12 1908

转载 Memory Leak(内存泄漏)分析

最近听了一些关于Memory Leak(内存泄漏)的seminar,感觉有些收获,所以留个记录,并share给朋友。1 什么是Memory Leak。Memory Leak是指由于错误或不完备的代码造成一些声明的对象实例长期占有内存空间,不能回收。Memory Leak会造成系统性能下降,或造成系统错误。2 Memory存储模式我们通常写的C++或Java Code在内存里边的存储

2013-12-18 16:31:17 2014

转载 探究内存泄露

几天前我发现了一个小问题:有一个服务器在跑了一段时间后挂掉了。重启脚本和系统后,这个问题还是会出现。因为问题代码不是关键业务,所以尽管有大量的数据丢失,但是问题并不严重。不过我还是决定作进一步的调查,来探寻一下问题到底出现在哪。首先注意到的是,服务器通过了所有的单元测试和集成环境的完整测试。在测试环境下使用测试数据时运行得非常正常。那么为什么在工作环境中一跑起来就会出现问题呢?很容易就能想到,也许

2013-12-18 16:26:44 742

转载 new 一个对象的时候加括号和不加括号有什么区别

先看以下代码:#include using namespace std;int main(){    int *a=new int[1000];    for(int i=0;i        a[i]=i+1;    }    delete[] a;    int *b=new int[1000];    for(int i=0;i

2013-12-18 15:13:26 1613

原创 QThread的currentThreadId()和currentThreadId一样吗--加括号与不加括号的区别

首先,介绍下QThread的currentThreadId()方法:Qt::HANDLE QThread::currentThreadId () [static]Returns the thread handle of the currently executing thread.Warning: The handle returned by this function is us

2013-12-18 14:37:31 6089 2

转载 面试10大算法汇总

英文版的“面试10大算法汇总”日最高访问量已高达4,318次。这说明总结程序员面试算法有实际意义,比读算法书更有效。下面是中文版的10大常见算法汇总+有代表性的题目汇总。这些概念是专门为面试准备的,因为日常编程中我们很少会自己去写一个链表或者做一个图,也不会经常使用没有效率的递归。以下用Java角度解释面试常见的算法和数据结构:字符串,链表,树,图,排序,递归 vs. 迭代,动态规划,位操

2013-12-18 12:31:57 950

转载 QThread使用方法总结

本文讲述的是在Qt中QThread使用方法,QThread似乎是很难的一个东西,特别是信号和槽,有非常多的人(尽管使用者本人往往不知道)在用不恰当(甚至错误)的方式在使用 QThread,随便用google一搜,就能搜出大量结果出来。无怪乎Qt的开发人员 Bradley T. Hughes 声嘶力竭地喊you are-doing-it-wrong和众多用户一样,初次看到这个时,感到 B

2013-12-17 19:05:42 3967

原创 在xp/Win7中一块网卡配置多个IP的用处及方法

一般情况下,一块网卡默认绑定一个IP,但这样会给上网带来不便。因为有些人会用同一台笔记本电脑不同的地方上网,在学校的时候, 白天会在教研室上网,晚上会回宿舍上网,  总是需要重新设置IP地址、默认网关、DNS,觉得很麻烦,有时候还记不住配置参数。但是,如果一个网卡绑定多个IP,就不会有这样的问题了,查了下资料,下面是分别在xp和win7中设置的方法: (1)在windows xp中:

2013-12-17 18:35:54 11029

转载 结构(struct)指针详解

这篇文章是九九年写的,这篇文章适合中级程序员。有不明白之处不要紧,多看几遍,然后花些时间上机操作及认真思考每个问题。遇到难题要研究、解决,难题出现于哪里?该用什么方式来解决?为什么要选择这个方式解决?有其它的解决方法吗?这样的解决方案完美吗?其实做个程序员这些基本的思考心得是要掌握的。记住;遇问题不要逃避,要面对现实、勇于挑战,仔细研究难题的所在,这样相信你会成功的!  指针结构与指针的关

2013-12-16 16:14:20 10078

转载 国内编程学习网站

在本文中,我们介绍了来自两岸三地的编程学习网站,通过它们,不仅可以一窥国内App开发的发展现状,而且这些网站各有特点,无论是主打游戏学习还是视频学习,对于想要自学的开发者而言,都是个好去处。说到国内的在线编程学习网站,很多人都是一脸茫然,即使是资深开发者也是如此。在许多人眼中,尽管国内App开发景象一派繁荣,但教育疲软却是不争的事实。在《移动开发者的自学宝典:十大在线编程学习网站》之后,笔

2013-12-14 12:29:32 2193

转载 QT中的多线程程序设计

QT通过三种形式提供了对线程的支持。它们分别是,一、平台无关的线程类,二、线程安全的事件投递,三、跨线程的信号-槽连接。这使得开发轻巧的多线程Qt程序更为容易,并能充分利用多处理器机器的优势。多线程编程也是一个有用的模式,它用于解决执行较长时间的操作而不至于用户界面失去响应。在Qt的早期版本中,在构建库时有不选择线程支持的选项,从4.0开始,线程总是有效的。线程类Qt 包含下面一些

2013-12-13 16:05:41 1826

转载 多线程编程的几种方法

随着计算机技术的发展,编程模型也越来越复杂多样化。但多线程编程模型是目前计算机系统架构的最终模型。随着CPU主频的不断攀升,X86架构的硬件已经成为瓶,在这种架构的CPU主频最高为4G。事实上目前3.6G主频的CPU已经接近了顶峰。  如果不能从根本上更新当前CPU的架构(在很长一段时间内还不太可能),那么继续提高CPU性能的方法就是超线程CPU模式。那么,作业系统、应用程序要发挥CPU的最大

2013-12-13 15:32:13 1001 1

转载 如何与人交流——程序员,赶紧生个孩子吧!

如何与人交流——程序员,赶紧生个孩子吧!分类: 我的书 2013-05-09 08:34 35421人阅读 评论(5)收藏 举报“每个家庭都应该生一个孩子吗?”我不太愿意这样建议,因为当不当父母完全是个人选择。我始终尽量避免鼓吹为人父母的经验,但我越深入这个角色,我便越是相信:没什么比拥有一个小孩更能折射出成人世界里源源不断的荒唐!成为父母之后,你会意识到的

2013-12-13 13:04:21 976

转载 struct的初始化方法

今天看数据结构时,突然看到一个用构造函数进行初始化的struct结构体,这个比较新鲜,因为以前从来没有看到过,于是想了想struct到底有没有构造函数以及struct如何初始化,上网查了一些资料,供大家参考!结构体实例(包括共用体)和类实例的初始化方法完全相同,二者都可以应用于继承层次中。不同点是结构体(包括共用体)默认成员为public,而类默认成员是private型的。一、若类和结

2013-12-12 17:06:01 6297

原创 如何动态定义一个 对象指针数组

1    我们先看看如何动态定义一个char类型(基本类型int/float/double)的数组          const  int  n ;          char *a = new char[n];    new char[n] 表示在内存中(heap)分配了sizeof(char)*n字节的空间,并且返回一个指向所分配内存首地址的指针;   所以,在这里,定义了

2013-12-12 09:45:09 7322 3

转载 void 和void * 的 用法

1.概述  许多初学者对C/C++语言中的void及void指针类型不甚理解,因此在使用上出现了一些错误。本文将对void关键字的深刻含义进行解说,并详述void及void指针类型的使用方法与技巧。2.void的含义  void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。  void几乎只有“注释”和限制程序的作用,因

2013-12-12 08:27:02 4560

转载 C++中各种对象的生命周期

作用域由{}定义,可以用构造函数和析构函数来追踪对象的生命周期,比较简单,不述。全局对象在main开始前被创建,main退出后被销毁。静态对象在第一次进行作用域时被创建,在main退出后被销毁(若程序不进入其作用域,则不会被创建)。局部对象在进入作用域时被创建,在退出作用域时被销毁。new创建的对象会一直存在,即使指向该对象的指针已被销毁,容易造成内存泄漏。

2013-12-10 23:23:56 11654

转载 用QT编程时遇到的错误总结

前段时间终于把设备管理上位机完成的差不多了,用了差不多有半个月的时间了,因为对QT还不是特别的熟悉,所以中间还是摸索QT的过程。这个上位机程序用到了多线程,数据库操作,网络套接字还有一些界面操作。使用的IDE我选用的是QT CREATOR,个人觉得还是很好用的,里面集成了QT DESIGNER,QT HELP,,QT DEBUG(虽然暂时我还没用过调试器,都是使用Qdebug打印信息和QMesse

2013-12-10 16:40:25 7021

转载 编程练习题

每当成为入门CS课程(学生们学习编程语言的课程)的助教时,都困于提出好的练习题。Project Euler和类似的问题通常对初学者来说来难了,尤其是对于那些没有很强数学背景的同学。在这篇文章中,Adrian Neumann 收集了一些从初级到高级逐级困难的练习题,适合刚开始学习编程的初学者。当有新的练习题时,Adrian 会及时添加。除了一些GUI问题外,练习题一般都是算法题,无需学习任何

2013-12-10 13:03:57 928

转载 听声音破解电话号码

2012年9月的时候,一个南京的大学生从电视台播放的一段记者采访360总裁周鸿祎的视频中破解了周鸿祎的手机号码,一时间被网络热炒。后来,又听说某人买车的时候使用电话银行付款,结果被人录下声音,破解了银行卡号和密码,导致存款被盗。最近居委会在小区里散发传单,提醒一种新的诈骗方式:电话听音破密码诈骗。各种网络和媒体对这些事情炒作的很热闹,但是趋于两种极端,要么将其说的出神入化,要么将其贬的一钱不值,唯

2013-12-10 12:49:37 5708

转载 QT中线程及其同步的用法

一个进程可以分成多个线程,每个线程有自己的Register Set和Stack,但共享进程的Heap、Data、Code (见下图)创建线程:       在Qt中要创建线程,第一步是继承QThread类,第二步是实现其中的run()函数,该方法为protected型,由start()函数来调用。下面是例子: view plaincopy to clipboar

2013-12-10 10:18:52 1123

原创 VS2010中Debug模式下报"HEAP CORRUPTION DETECTED"错误

今天写代码时,在Debug模式下运行时突然报了这样的错误:"HEAP CORRUPTION DETECTED",如下图: 在Release模式下运行时报如下的错误:我从表面上看,就知道是heap除了问题,下面是我的代码:------------------------------------------------------------------------------

2013-12-10 09:53:23 4567

转载 QT中线程的介绍及使用

本文档是自己所整理的一份文档,部分是原创,还转贴了网上的一此资料(已经标明了),(难点是多线程的编写),是有源代码的,大家可以作为参考,用到的知识是视频采集,压缩解压(xvid),实时传输(jrtp),基于qt库所写的,由于本人对qt下的多线程还不很了解,只做了单线程的(采集-->压缩-->解压-->发送-->接收--显示),用timer来刷新视频播放窗口,现在正在研究多线程(代码还在整理中),以

2013-12-09 23:39:33 2079

原创 strlen、sizeof,sizeof(*)含义及区别

如:char  *str = “ghjuikls”;strlen(str)=4 表示str指针指向的字符串长度,计算长度时遇到'\0’结束,长度不包括'\0’;sizeof(str)=4 表示str指针占多少字节(内存空间)!在32位系统中,指针占4个字节;sizeof(*str)=1 表示str指针指向的类型占多少字节!在这里指向char类型的字符,即char类型占多少字节,实际中c

2013-12-09 22:16:33 1783

转载 磨刀不误砍柴工-----为提升自己找到一个平衡点

作为一名软件开发人员,你该如何磨快你的锯子?“磨锯子”实际上是一个代名词,泛指一切编程以外的活动(不必编写代码),而这些活动(理论上来说)能使你成为一名更出色的程序员。这个词源自于Covey的一本书:《高效能人士的7个习惯》(《The 7 Habits of Highly Effective People》)。译者注:Stephen R.Covey(史蒂芬·柯维

2013-12-09 21:49:03 1099

转载 C++中如何定义动态数组

首先:为什么需要动态定义数组呢?  这是因为,很多情况下,在预编译过程阶段,数组的长度是不能预先知道的,必须在程序运行时动态的给出  但是问题是,c++要求定义数组时,必须明确给定数组的大小,要不然编译通不过    如: int Array[5];正确       int i=5;       int Array[i]; 错误 因为在编译阶段,编译器并不知道 i 的值是

2013-12-09 21:27:24 36092 2

转载 动态数组

1.变长一维数组         这里说的变长数组是指在编译时不能确定数组长度,程序在运行时需要动态分配内存空间的数组。实现变长数组最简单的是变长一维数组,你可以这样做:         //文件名:   array01.cpp     #include     using   namespace   std;         int   main()

2013-12-09 21:22:51 844

网络安全基础:应用与标准(第4版)

从第一章到第11章,还有附录A,B。非常全,主要介绍了网络安全的应用和标准

2013-08-04

简单的计费管理系统

此系统是用java及相关的技术开发的一个简单的计费管理系统,体现了一个最基本的计费管理系统框架,实现了一个计费管理的流程。

2011-12-29

基于AT89C2051单片机的电风扇

本文介绍一个采用AT89C2051单片机芯片(以下均简称其为“单片机”)制作的“电风扇定时开关电路”,该电路既可按照系统默认的定时时间参数自动运行,也可由使用者随时通过按键输入设置新的定时时间参数;在整个定时时间内,既可选择使用“连续风”状态,也可选择使用“阵风”状态。具有电路简单、制作容易、设置方便、使用灵活等优点。该电路的控制软件及硬件电路均已实际调试运行通过,非常适合在业余条件下制作、安装和使用,也可由电风扇专业生产厂将其作为自动控制电路,在新型电风扇产品中安装。通过该电路,您可以进一步了解到“单片机”电路的应用扩展功能和指令应用技巧

2010-05-04

空空如也

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

TA关注的人

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