自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(85)
  • 资源 (4)
  • 收藏
  • 关注

原创 随手记

好久不工作//数组指针{ //要声明指向数组类型的指针,必须使用括号 int(*arrPtr)[10] = NULL; //一个指针,它指向一个有10个int元素的数组 //如果没有括号,则声明 int*arrPtr[l0]; //表示 arrPtr 是一个具有 10 个 int 类型指针的数组。 int matrix[3][10] = { 0 }; arrPtr = matrix; // 使得arrPtr指向矩阵的第一行 (*arrPtr)[0] = 5; arrP

2021-04-02 20:58:35 132

原创 shell脚本

linux监控一个程序:#!/bin/bashwhile truedo procnum=$(ps -ef | grep GameTransferTF | grep -v grep | wc -l) echo "process tf num = ${procnum}" if [ $procnum -eq 0 ]; then ...

2019-08-13 11:15:55 216

原创 五子棋

微信小程序,微信小游戏, 五子棋1.极大极小值算法2.alpha-beta剪枝3.算杀都还没实现。。。。标题 

2018-12-23 23:22:35 418

原创 python-highlight

## c/c++ high-light by tianzimk 2016-3-20 def high_light(strpath): line_num = getline(strpath) fr = open(strpath, "r") fw = open(strpath + ".html","w") fw.write("") fw.write("") fw.write("")

2016-03-20 23:42:20 1878

原创 迭代器模式

UML类图上图:    Iterator:定义迭代器访问和遍历元素的接口;    ConcreteIterator:具体迭代器的实现;    Aggregate:定义的容器,创建相应迭代器对象的接口;    concreteAggregate:具体的容器实现创建相应迭代器的接口,该操作返回ConcreteIterator的一个适当的实例。使用场合    访问

2016-03-13 22:50:03 866

原创 python线程setDaemon

在python中,主线程结束后,会默认等待子线程结束后,主线程才退出,如下:#coding=utf-8import threadingimport timeclass mythread(threading.Thread): def __init__(self): super().__init__() def run(self): for i in range(5):

2016-03-05 12:05:51 1437

原创 python简单多线程

#coding=utf-8import threadingimport randomfrom time import sleepdef task1(): print(threading.current_thread().getName() + " start.") for i in range(5): print("i: " + str(i)) sleep(1) prin

2016-03-03 22:38:39 880

原创 高斯模糊算法

一维正态分布函数:对应的曲线如下:其实就是将某一像素点一定半径内的rgb值按照以上权重分布求出此点的rgb值。图片像素是二维矩阵,修改如下:对一个二维的像素矩阵可以分别在水平与垂直方向进行一维高斯模糊其效果等同与二维高斯模糊效果,速度更快。测试图片如下:代码如下:void CGSmooth::generateGauss

2016-01-24 16:59:49 2087

原创 二分查找

二分查找比较简单:templateint binary_search(T array[],int len, T value){ int left = 0, right = len -1; while(left <= right) { int index = (left + right)/2; if(value == array[index]) { return in

2016-01-21 20:25:34 648

原创 QThread定时器

如何在子线程中启动定时器:MyThread::MyThread(QObject *parent) : QThread(parent){ printf("[%d] construct\n",this->currentThreadId());}MyThread::~MyThread(){ delete timer;}void MyThread::timedone(){ p

2016-01-07 13:44:45 2958

原创 Python

今天开始学习脚本语言,写了一个简单的程序做测试^_^查询北上广深的天气:import urllib.requestimport jsondef get_city_id(_city): city = ["北京",'上海','广州','深圳'] id = ['101010100','101020100','101280101','101280601'] index = 0 for

2015-12-18 17:36:08 796

原创 memcached简单分析

多线程的memcached很简单,一个监听主线程,N个工作线程(event worker),实际上每一个线程都是一个单独的libevent实例,都有自己的event_base。 a.主线程负责监听、接收、CQ_ITEM的分发 b.工作线程负责已注册连接的读写事件处理。网上找了一个图如下,源地址不明:1.子线程初始化:bool MyService::thread_init

2015-11-26 00:04:29 1003

原创 LIBMAD解码播放器

简单的libmad封装类LibMP3:// LibmadMP3.h: interface for the LibmadMP3 class.////////////////////////////////////////////////////////////////////////#if !defined(AFX_LIBMADMP3_H__0363C03A_CE0B_45E2_BA2D

2015-08-07 00:10:57 2017

原创 echo server

1.The libevent API provides a mechanism[机制] to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached. Furthermore, libevent also support cal

2015-08-06 21:41:52 1372

转载 清明过后小记

又一次来到了帝都bj,zf之行像是做了一个漫长梦一样,梦中有着快乐和忧伤,有些地方、有些人的记忆注定伴随终身。离职了,哈哈挺任性的(连面试官都问我为什么不骑驴找马),不管下一份工作怎么样,选择了就不后悔。今天跑了2家公司,一家汽车生产自动化的一家互联网型的,都不太理想,第一家我不想去,第二家要求太高我应该去不了。明天该去哪呢,我还不确定,你呢,我更不确定。献上一张照片拍摄于

2015-04-07 23:46:59 771 1

原创 virtual析构函数

今天面试回答的不好,最终还是因为C++基础不好,而且没有做好准备。虚析构函数其实比较简单,C++多态的一个特性,看如下简单示例:class base{public: base() { cout<<"base constructor..."<<endl; } virtual ~base() { cout<<"base discontructor..."<<endl; } virtu

2015-04-07 23:18:25 929

原创 strstr实现

自己实现的很不好:char* str_str(const char* s1,const char* s2){ assert(s1 != NULL && s2 != NULL); while(*s1++ != '\0') { if(strncmp(s1,s2,strlen(s2))==0) { return (char*)s1; } } return NULL;

2015-04-06 12:43:57 741

转载 QuickSort

基本思路:    1.将待排序数据存入一维数组中,然后以第一个值为基准值。起初i指向第一个元素,j指向最后一个元素之后的位置。      2.分别从两端遍历数组,直到i所指向的值比基准值大,以及j所指向的值比基准值小时,分别停止遍历,然后交换i,j所指向的值。    3.重复步骤2,直到i >= j,然后交换p和j所指向的值,此时序列别分隔成两部分,基准值右边的值都比基准值

2015-04-05 23:09:28 743

转载 QObject 的构建/销毁顺序

当QObject在堆上创建(也就是说,使用new操作符),同时也会以任意顺序创建一棵树;稍后,树中的对象也会以任意顺序被销毁。当树中的对象被删除掉时,如果这个对象有父对象,析构函数会自动将其从父对象的列表中删除。如果这个对象有子对象,析构函数会自动删除掉所有子对象。不管析构的顺序如何,没有QObject被删除两次。  当QObject在栈上被创建,其行为也是类似的。按理说,析构顺序也不会有

2015-03-29 10:05:39 2251

原创 了解libevent

在libevent.org官网下载libevent-2.0.22-stable.tar.gz发布包。环境:win7+VS2010Microsoft visual studio命令提示(2010)下,进入libevent-2.0.22-stable目录,编译:nmake /f Makefile.nmake生成libevent.lib、libevent_core.lib、libevent_

2015-03-14 01:14:09 669

原创 c++ map自定义排序

c++map简单排序

2015-01-24 01:29:22 6274

原创 单例模式2

Double Checked Locking模式:

2014-09-17 00:53:45 735

原创 Qt之QAxObject用法

QtConcurrent网上讲了一大堆,没看懂,说是Qt的线程池。

2014-08-25 00:27:57 13528

原创 ACE_Condition使用

学习ACE线程池时看到ACE_Conditon,还不知道

2014-08-16 17:16:38 2597

原创 浮躁的方块

最近很浮躁,也不知道是不是工作的原因,都没有静下心来好好学习

2014-06-23 23:19:42 817

原创 Qt销毁非模态对话框

很多时候需要非模态对话框:

2014-05-29 00:41:44 3870

原创 Copy Constructor Function

拷贝构造函数是一种特殊的构造函数,函数的名称必须和类名称一致,它必须的一个参数是本类型的一个引用变量。

2014-05-08 22:20:38 894

转载 转ACE_Svc_Handler

ACE_Event_Handler: 事件处理器,是ace中所有反应式事件处理器的基类。接口比如Handle_input,Handle_timeout,Handle_signal,Handle_close等。     ACE_Svc_Handler是ace的同步和反应式数据传输及服务处理机制的基础,ACE_Svc_Handler派生于ACE_Task,而ACE_Task派生于ACE_Eve

2014-05-05 00:50:06 2089

原创 tinyxml简单解析

只需到http://sourceforge.net/projects/tinyxml/下载编译jike

2014-04-06 17:39:02 867

转载 ACE反应器(Reactor)2

看到ACE中反应器(Reactor) 用于事件多路分离和分派的体系结构模式  一章中说:在从反应器注销,以及handle_close()挂钩方法被调用时,该类将自己删除。但是,必须保证MyEventHandler总是动态分配的(即是从ACE_Event_Handler派生出的类一定是new出来的,而不是stack上临时变量或全局变量。),否则,全局内存堆可能会崩溃。确保类总是动态地创建的一种办法是

2014-03-22 01:58:39 893

原创 ACE守卫Guard类属

ACE中的守卫类是一种模板,它通过所需锁定机制的类型来参数化。       守卫类的对象定义一个代码块,在其上获取一个锁,在退出次代码块时,锁被自动释放(对象的构造器获取锁,析构器释放锁)。       ACE_Guard,ACE_Read_Guard,ACE_Write_Guard。#include "ace/Synch.h" ///sleep#include "a

2014-03-21 17:19:08 1872

转载 MFC非模态对话框

1.首先利用资源编辑器创建对话框资源,并针对该对话框资源定义一个对话框类:class   CTestDlg :  public CDialog2.创建话话框对象模态对话框的创建:    如:     CTestDlg    dlg;     dlg.DoModal();非模态对话框创建:   如:   CTestDlg    dlg;   dlg.Create(

2014-02-13 01:11:01 1525

转载 Singleton模式

1. Singleton的实现:Singleton不可以被实例化,因此将其构造函数声明为protected或者直接声明private。  2. Singleton模式经常和Factory(AbstractFactory)模式在一起使用,因为系统中工厂对象一般来说只要一个。  3. 通过维护一个static的成员变量来记录这个唯一的对象实例,通过提供一个static的借口Instance来获

2014-02-11 01:30:39 785

原创 VS2010环境变量

WIN7下删除用户后,VS2010可以F5运行程序,但是如果直接打开程序,则提示缺少QtCored4.dll库,系统变量是有的,重新设置用户变量即可(重启编译器),无需重启系统,设置系统变量才需重启系统。      用户变量Path :D:\Qt\4.8.4\bin      系统变量QTDIR:D:\Qt\4.8.4

2014-01-22 01:01:30 1263

原创 CArchive序列化测试

循环序列化的问题,一直很疑惑。int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]){ CFile devStateFile; BOOL bSuc=devStateFile.Open("serilized.dat",CFile::modeCreate | CFile::modeWrite); if (bSuc) { CArchive

2014-01-10 16:37:15 930

转载 还没有睡觉

刚刚把明天的绩效考核报告写好(写的很烂,虽然感觉自己做了很多而且每天都很忙),现在差不多凌晨2点了。      2014年已经开始,自己已经25岁了,虽然准确的计算应该为24,13年-7月份开始工作,2个月转正,直接发配HuJiu,原本预定为元旦返回帝都bj,看势头回不去了,不回去也好,省得每天吸收雾霾挤地铁,再说,那个恶梦开始的地方,哈哈,不过,恶梦也是梦,我把它定义为梦想的一种,这样的话,

2014-01-06 02:30:27 727

原创 QList隐式共享

隐式共享机制(implicit sharing),也叫做copy on write。顾名思义,就是说,在内容有变动的情况下才对容器中的数据结构做复制,否则仅做共享。QT中所有的容器类都支持隐式共享,而无论是Java风格还是STL风格的迭代器,使用只读迭代器时,背后也都使用到了隐式共享机制,以增加读取的效率。比如:QListint main(int argc, char *argv[]){

2014-01-05 22:36:34 2855 3

转载 ACE事件处理器

下面的例子创建了两个具体事件处理器。第一个具体事件处理器My_Accept_Handler用于接受和建立从客户到来的连接。另一个事件处理器是My_Input_Handler,它用于在连接建立后对连接进行处理。因而,My_Accept_Handler接受连接,并将实际的处理委托给My_Input_Handler。#include "ace/Reactor.h"#include "ace/SOC

2013-12-13 02:00:40 1363

转载 反应堆模式ACE_Reactor类

ACE中的反应堆与若干内部和外部组件协同工作。其基本概念是反应堆构架检测事件的发生(通过在OS事件多路分离接口上进行侦听),并发出对预登记事件处理器(event handler)对象中的方法的“回调”(callback)。该方法由应用开发者实现,其中含有应用处理此事件的特定代码。于是用户(也就是,应用开发者)必须:        1.创建事件处理器,以处理他所感兴趣的某事件。   

2013-12-10 00:20:48 1658

原创 CArchive序列化

实现序列化的类必须满足下列条件:   1. 该类需要从CObject类派生(可以是间接派生);   2. 在类中中进行DECLARE_SERIAL宏定义;   3. 类存在有缺省的构造函数;   4. 类中实现了Serialize()函数,并且在其中调用基类的序列化函数;   5. 使用IMPLEMENT_SERIAL宏指明类名及版本号;                

2013-12-07 00:31:11 1887

Libmad音乐播放器

简单的MP3播放器示例,libmad解码,支持专辑图片显示,支持FFT显示,支持Lrc歌词显示,只能播放本地mp3

2015-09-27

MINIPlayer

简单的MP3播放器示例,libmad解码,支持专辑图片显示,支持FFT显示,支持Lrc歌词显示,BUG(部分VBR,CBR音乐进度条显示不正确)

2015-08-06

专业见习报告(automic)

自动化,专业见习报告,模板。对于新年级学生来说,是可以学习的模板。这个报告是自动化专业的报告,其他一刻模仿。

2011-06-03

空空如也

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

TA关注的人

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