自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

coderchen

端游服务器开发[勤能补拙]

  • 博客(20)
  • 资源 (32)
  • 收藏
  • 关注

原创 以对象管理资源 auto_ptr和shared_ptr

void doSomething(){ int *a=new int(100); /* ...... 如果此处的代码发生异常,doSomething()会提早返回,而delete也将不会执行,最终导致资源泄漏 */ delete a;}为了保证doSomething()中资源总是能够得以释放,我们将资源放入对象中,当控制流离开doSomething(),对象的析构函数自动释放资

2012-08-26 08:47:43 1140

原创 vs2008下编译boost_1_47_0

1.下载boost库,并解压,我下载的 boost_1_47_0.zip,我解压到C盘。2.运行--cmd:输入 cd C:\boost_1_47_0,回车,转移到boost解压后的根目录3.运行bootstrap.bat,生成b2.exe4运行命令b2 --toolset=msvc-9.0 --build-type=complete等待30到60分钟,编译完成,提示信息如下。

2012-08-25 18:13:29 1244

原创 《Effective C++》operator=返回*this的目的:实现连锁赋值

经常看到连锁赋值,如int x,y,z; x=y=z;如果不允许连锁赋值,就麻烦了。对于类来说,我们也希望可以连锁赋值。关键在于重载‘=’运算符的返回值。#include class TEST { public: TEST& operator=(const TEST& rhs){return *this;} }; void main() { TEST a,b,c

2012-08-25 10:03:02 1894

原创 《Effective C++》不要在构造函数和析构函数中调用虚函数

#include class BASE { public: BASE() { myPrint(); } ~BASE() { myRelease(); } protected: virtual void myPrint(){cout<<"Base"<<endl;} virtual void myRelease(){cout<<"Base Rele

2012-08-25 09:37:24 2889

原创 由Qt中qApp想到的(这是单例模式么???)

学Qt时,发现只要包含头文件QApplication或者QCoreapplication,就用使用qApp,指向一个当前实例。查看源码发现qApp是个宏:QApplication中:#define qApp (static_cast(QCoreApplication::instance()))QCoreapplication中:#define qApp QCoreApplication

2012-08-18 16:15:44 24181 6

原创 Qt4.8.2 托盘

widget.h#ifndef WIDGET_H#define WIDGET_H#include #include class Widget : public QWidget{ Q_OBJECT public: Widget(QWidget *parent = 0); ~Widget();private: QSystemTrayIco

2012-08-18 15:20:41 1895

原创 Qt4.8.2 模仿QQ右下角弹窗提示

今天在CSDN偶然看到一位前辈用JAVA写的QQ右下角弹窗提示,而自己正在学习Qt,所以也自己试着写一下,虽然代码乱的一塌糊涂,但最后还是能够运行了。程序最终运行:输入内容并点击确定的时候,从右下角平滑弹出下图。停留10秒后,逐渐变透明并最终消失,可自行关闭和点击浏览按钮浏览输入的网址。 一、输入内容的对话框从QDialog继承,点击确定,内容不为空时,作适

2012-08-17 18:41:07 8609 5

原创 类成员变量的赋值与初始化

C++规定:对象的成员变量的初始化动作发生在进入构造函数本体之前。#include #include using namespace std;class STU{public: /* name为初始化,sex和age为赋值 */ STU(string _name,string _sex,int _age):name(_name) { sex=_

2012-08-16 14:53:38 12178

原创 #include与寻找函数的实现

大一学C++的时候,死板的记着“头文件声明函数,源文件实现函数,其余文件如果要用这个函数的话,包含头文件即可”。虽然不知道为什么,但也没仔细想。后来仔细想想,略有所悟。大一时间就这样写程序:fun.hint myAdd(int,int);fun.cpp#include "fun.h"int myAdd(int a,int b){ return a+b;}

2012-08-16 14:19:27 1504 1

原创 《Effective C++》尽量以const,enum,inline,替换#define

在程序被编译器编译之前,宏会被预处理器执行文本替换,编译器或许根本看不到宏。例如 #define ASPECT_RADIO 1.653,如果因为此常量出现问题,编译器也许会提到1.653而不是ASPECT_RADIO。十分不利于分析调试。解决之道是以一个常量替换之const double AspectRadio=1.653。使用常量可能比使用宏产生更小的目标码。因为预处理器“盲目的将ASP

2012-08-16 09:37:06 952

原创 extern char *a与extern char a[]

《C陷阱与缺陷》提到要特别注意extern char *a与extern char a[]之间的区别。所以特意测试了一下。测试环境VC6b.cppchar *a="ABCDEF";char b[]="ABCDEF";第一种情况:主文件中声明extern char a[];extern char b[];#include extern char a[]

2012-08-15 19:31:36 9703 5

原创 构造函数,拷贝构造函数,赋值操作符的调用时机

#include class TEST{public: TEST() { cout<<"默认构造函数"<<endl; } TEST(const TEST&t) { cout<<"拷贝构造函数"<<endl; } TEST &operator =(const TEST&t) { cout<<"赋值操作符"<<endl; return *this; }};

2012-08-15 14:59:15 1325

原创 Qt4.8.2 Qt调用dll

dll用VC6编写,导出函数int myQtAdd(int a,int b);默认C调用约定addDll.hint myQtAdd(int a,int b);addDll.cpp#include "addDll.h"int myQtAdd(int a,int b){ return a+b;}addDll.defLIBRARY addDllEXPORT

2012-08-14 19:34:42 2390 1

原创 Qt4.8.2 拖放技术

原文:http://www.chineselinuxuniversity.net/articles/52558.shtml,并且参考《Qt学习之路》拖放技术由两部分组成:拖Drag、放Drop。拖:按下鼠标并且移动鼠标以拖动对象。放:鼠标松开的过程。拖和放之间,鼠标是一直按着的。 下面的小程序实现了:当拖动具有某种属性的对象到窗体时,鼠标显示可以拖放。鼠标松开时,在窗体的lab

2012-08-14 13:41:43 1777

原创 由rand()函数想到的

rand()函数,生成[n,m]之间随机数的方法是rand()%(m-n+1)+n。之前学习的时候,不知道为什么这个函数为什么这怪,也没仔细去想。只是感觉这个函数太难记了,以至于每次使用都得查。最近,一室友(简称TT)在用这个函数的时候也忘记怎么用了,于是我们商量了一下,终于觅得真章。首先rand()函数是生成[0,RAND_MAX]之间的随机数,而%表示取余,(m-n+1)表示一个间

2012-08-13 11:12:13 1043 1

原创 Qt4.8.2 不会ps的程序员也可以抠图

一、最近学习Qt的时候正在做一个音乐播放器,做的差不多了。但是关闭按钮咋看咋难看。这个关闭按钮还是从一位前辈的Qt实现360新功能的资源里拷过来的,但是在这上面看着很不好看啊。所以,在网上搜了点按钮贴图。找了好久,看到了不错的。但是,,,,所以的小按钮在一张jpg上面,于是搬出PS,由于资质愚笨,弄了好久也没有抠出按钮图片,于是想试试编程实现。二、思路首先观察这张图

2012-08-11 15:38:41 4218 3

原创 Qt4.8.2 QPushButton按钮贴图以及实现按钮的几种常用状态

一、继承自QPushButton,不改变图片本身,而是通过改变按钮背景的透明度myPushButton.h#ifndef MYPUSHBUTTON_H#define MYPUSHBUTTON_H#include class myPushButton : public QPushButton{ Q_OBJECTpublic: explicit myPushBut

2012-08-10 13:10:39 14581

原创 Qt4.8.2 右键弹出菜单及子窗口弹出位置不正确

一、关联菜单策略     QWidget:: contextMenuPolicy帮助文档:This property holds how the widget shows a context menu.The default value of this property is Qt::DefaultContextMenu, which means the contextMenuEv

2012-08-06 16:15:20 9064

原创 Qt4.8.2 实现简单的界面换肤功能

声明下:这只是我自己在学习Qt的时候,想到的,也不知道这方法合不合适,反正是能够实现换肤功能。一、思路及准备双击主程序界面,弹出换肤界面,点击换肤界面上的图片,主程序改变相应界面背景图片。我准备了四张图片,big_spring.png,big_summer.png,small_spring.png,small_summer.png.看名字就知道换肤界面列出来small_spring.p

2012-08-03 10:31:38 8924 6

原创 Qt 内存管理与布局管理器

一、new与delete在C++学习中,new与delete必须成对使用,防止内存泄漏,可是在学习Qt时,我发现很多new,而却几乎找不到delete。在网上搜索得知:Qt完善了C++的内存管理机制,“如果指针对象有父对象,那么父对象在被释放时,会自动释放子对象”。所以我在练习时,创建的控件都传递了this指针,作为其父对象。但是,当我在练习布局管理器的时候,却出了问题。二、传递了父对

2012-08-02 22:57:13 4618 1

3-sum算法求解 python

3-sum算法求解 python http://blog.csdn.net/qq575787460/article/details/39100531的配套资源

2014-09-06

查找数组中和为某个值的元素对的个数

查找数组中和为某个值的元素对的个数。 2--sum。 http://blog.csdn.net/qq575787460/article/details/39085999的资源

2014-09-05

查找数组中最接近与某值的元素 python

查找数组中最接近与某值的元素。 是自己博文http://blog.csdn.net/qq575787460/article/details/39058649的资源。

2014-09-04

跳跃表 C++实现

跳跃表的C++实现版本。 提供与红黑树的测试用例。

2013-11-23

linux 网络库 C++ epoll

个人实验性质的网络库,linux下C++,封装epoll模型。 实现了定时器管理。代码量700+行。

2013-11-13

linux webserver例子

这是linux环境下使用epoll模型编写的一个webserver例子,makefile已经写好,直接下载好make一下就可以了。我在自己本机测试与使用libevent性能差不多。 欢迎提出意见。

2013-10-13

VS2010编译libjingle0.6.2步骤

VS2010编译libjingle0.6.2步骤 图文并茂

2013-01-27

VC2010操作ini库

VC2010操作ini库 lib

2012-11-15

Qt4.8.2 Qt实现360安全卫士界面

Qt实现360安全卫士界面 正常的双击放大,缩小。动态换肤。

2012-08-24

Qt4.8.2 模仿QQ桌面右下角消息提示

Qt4.8.2 模仿QQ桌面右下角消息提示

2012-08-17

Qt4.8.2 QQ抽屉 QTreeWidget

Qt4.8.2 QQ抽屉 QTreeWidget 可以自行添加,删除,重命名分组。 添加,删除,重命名好友。

2012-08-13

Qt4.8.2 mp3 音乐播放器

Qt4.8.2 mp3 音乐播放器 精力有限,不想继续写下去了。但是已完成大部分功能。 使用sqlite数据库

2012-08-11

Qt4.8.2 绘图 切割图片

Qt4.8.2 绘图 切割图片 源码+可执行文件

2012-08-11

Qt 4.8.2 QPushButton 按钮贴图

Qt 4.8.2 QPushButton 按钮贴图 源码 可执行文件

2012-08-10

Qt4.8.2 界面换肤

Qt4.8.2 界面换肤demo 双击主程序界面 弹出换肤窗口

2012-08-03

Qt4.8.2 加农炮小游戏 cannon 源码 和exe文件

Qt4.8.2 加农炮cannon小游戏,附源码和可行程序。 移动鼠标改变射击角度,按住鼠标左键,改变射击力度,松开鼠标射击。 射中+20分,射不中-10分,初始分100. 当分数《=0时,游戏结束。

2012-08-02

Qt4 FindDialog

Qt4 FindDialog 小入门程序 了解信号与槽机制

2012-07-23

Qt4 listWidget

Qt4 listWidget 右键弹出菜单测试。 可更改listWidget风格.

2012-07-23

VC6获取主机信息,cpu信息,内存信息,硬盘信息,dll调用

VC6获取主机信息 内存信息 cpu信息 硬盘信息 dll调用 dll导出对话框资源。

2012-07-14

VC++ hook 挂机锁 带钩子过程dll源码

VC++ hook 挂机锁 带钩子过程dll源码

2012-04-10

c++ 桌面时钟 纯API 双缓冲

c++ 桌面时钟 纯API VC6开发环境 双缓冲绘图

2012-04-09

hanio塔 C语言

hanio塔 C语言 数据结构 hanio塔 C语言 数据结构 hanio塔 C语言 数据结构

2011-11-22

C++ 多线程求PI

C++ 多线程求PI,里面有word文档 写的是思路

2011-11-15

数据结构 迷宫求解 C++

数据结构 迷宫求解 C++ 数据结构 迷宫求解 C++ 数据结构 迷宫求解 C++

2011-11-14

利用栈的括号匹配算法 C语言数据结构

利用栈的括号匹配算法 C语言数据结构 利用栈的括号匹配算法 C语言数据结构

2011-11-13

数据结构 经典算法 CHM格式 C语言

数据结构 经典算法 CHM格式 C语言 数据结构 经典算法 CHM格式 C语言

2011-11-11

TCP局域网聊天软件 源代码

TCP局域网聊天软件 源代码 分为服务器和客户端 支持多用户聊天

2011-10-29

UDP局域网聊天软件

UDP局域网聊天软件 UDP局域网聊天软件UDP局域网聊天软件

2011-10-14

约瑟夫环问题程序 源代码

设编号为1,2,3,……,n的n(n>0)个人按顺时针方向围坐一圈,每个人持有一个正整数密码。开始时任选一个正整数做为报数上限m,从第一个人开始顺时针方向自1起顺序报数,报到m时停止报数,报m的人出列,将他的密码作为新的m值,从他的下一个人开始重新从1报数。如此下去,直到所有人全部出列为止。令n最大值取30。要求设计一个程序模拟此过程,求出出列编号序列。

2011-03-20

链表(创建,清空,删除元素,求长度,插入元素)

1.初始化 2.清空 3.求链表长度 4.检查链表是否为空 5.检查链表是否为满 6.遍历链表(设为输出元素7.从链表中查找元素 8.从链表中查找与给定元素值相同的元素在表中的位置 9.向链表中插入元素 10. 从链表中删除元素 其他键退出。。。。。 其中黑体部分必做

2011-03-19

html入门教程 网页制作 通俗易懂

html入门教程 适合新手学习 简单易懂 方便实用..

2011-03-07

空空如也

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

TA关注的人

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