关闭

MATLAB功率谱估计

close all; clc; clear all; fs = 1024; len = 1024; t = 0:1/fs:(len-1)/fs; x = 5.3 * sin(2*pi*16*t); ffty = fft(x, len); ffty = abs(ffty) / len; f = 0:fs/len:fs/2; plot(f, ffty(1:len/2+1)) title('FFT')...
阅读(308) 评论(0)

虚函数的一点总结

最近看编程规范时看到关于虚函数的一些说明,参考了《深入浅出MFC》书中的说明,对虚函数有了一点想法,总结下来以便以后回顾。...
阅读(110) 评论(0)

值得推荐的C/C++框架和库

值得推荐的C/C++框架和库...
阅读(292) 评论(0)

Dll注入学习笔记

实现DLL注入的思路是让进程运行LoadLibrary函数,把我们的DLL装载进去,怎样让进程调用LoadLibrary函数呢?首先想到的办法就是在目标进程中创建一个新的线程来调用。比如: HANDLE WINAPI CreateRemoteThread(   __in          HANDLE hProcess,                          //线程被创建的进程句...
阅读(414) 评论(0)

glog的简单应用

今天在MFC环境下应用了一下glog,下面写一下使用过程(开发环境VS2008): 1.创建工程后,将编译好的libglog.dll和libglog.lib以及src/windows目录下的文件拷贝到工程目录下 2.添加头文件,并引入库文件,为了防止和中的ERROR定义冲突,加入宏定义GLOG_NO_ABBREVIATED_SEVERITIES如下: #define GLOG_NO_ABBR...
阅读(596) 评论(0)

google glog简介

本文是根据自己的理解翻译组织了glog的manual,鉴于自身的理解能力和英语水平,可能存在谬误,欢迎大家指出!英文原文见http://google-glog.googlecode.com/svn/trunk/doc/glog.html 1.   概述       Google glog是一个基于程序级记录日志信息的c++库,编程使用方式与c++的stream操作类似,例: ...
阅读(476) 评论(0)

Python多线程学习

一、Python中的线程使用:     Python中使用线程有两种方式:函数或者用类来包装线程对象。 1、  函数式:调用thread模块中的start_new_thread()函数来产生新线程。如下例:   view plaincopy to clipboardprint? import time  import thread  def timer(no, int...
阅读(378) 评论(0)

C/C++程序员必须熟练应用的开源项目

作为一个经验丰富的C/C++程序员, 肯定亲手写过各种功能的代码, 比如封装过数据库访问的类, 封装过网络通信的类,封装过日志操作的类, 封装过文件访问的类, 封装过UI界面库等, 也在实际的项目中应用过, 但是回过头仔细想想,其实以前自己写过的这些代码,只能是在特定的项目或者特定的环境中使用, 对于自己来说, 在不同的项目中应用, 只需要复制代码, 改改也就可以了, 因为自己写的代码自己很熟悉。...
阅读(686) 评论(0)

Python正则表达式指南

1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。如果已经在其他语...
阅读(461) 评论(0)

Python串口编程(转载)

python的串口网上有很多例子,这里了只是把认为好的整理到一起。 首先,应该安装serial模块,还能开始后续的操作。我用的python2.6,serial模块可以在这里下载安装serial模块下载 1,字符串的发送接收 短接串口的2、3脚,创建一个文本,如: [python] view plaincopy import serial...
阅读(652) 评论(0)

设计模式-状态模式

状态模式:当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。状态模式主要解决的是当控制一个对象状态转换的条件表达式过于复杂时的情况,把状态的判断逻辑转移到表示不同状态的一些列类当中,可以把复杂的判断逻辑简化。 好处:将与特定状态相关的行为局部化,并且将不同状态的行为分离开来,将特定的状态相关的行为放入一个对象中,通过定义新的子类可以很容易的增加新的状态和转换。 当一个对象...
阅读(308) 评论(0)

设计模式-观察者模式(二)

观察者模式有一个不足,在于所有观察者必须派生于同一个基类,并且实现方法Update,而在实际应用中,往往不能满足这种条件,因为不同的观察者可能是毫不相关的两个类,并且可能不会提供Update方法,解决的方法就是使用事件委托。 C++中没有提供委托模型,需要自己构造,我们最容易想到的就是使用函数指针,而要取得类的成员函数指针,我们需要如下定义: class A { public: void...
阅读(270) 评论(0)

设计模式-观察者模式(一)

定义:观察者模式,又叫发布-订阅模式。他定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使他们能够自动更新自己。 使用:一、当一个对象改变需要同时改变其他对象,同时它不知道具体有多少对象有待改变时,考虑观察者模式。             二、当一个抽象模型有两个方面,其中一方面依赖另一方面,这时用观察者模式可以将这两者封...
阅读(383) 评论(0)

设计模式-建造者模式

建造者模式:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。它主要适用于创建一些复杂的对象,这些对象内部构造间的构造顺序通常是稳定的,但对象内部的构建通常面临着复杂的变化。建造者模式是当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方法时适用的设计模式。 UML图如下: 相关类代码如下: // Builder.cpp : Define...
阅读(303) 评论(0)

设计模式-外观模式

外观模式:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这一接口使得这一子系统更加容易使用。 使用:首先,在设计初期,应有意识的将两个不同的层分离,在层与层之间建立外观Facade。             其次,在开发阶段,子系统往往因为不断的重构演化而变得越来越复杂,增加一个外观Facade可以提供一个简单的接口,减少他们之间的依赖。             第三,在...
阅读(335) 评论(0)

设计模式-模板方法模式

模板方法模式定义:定义一个操作中的算法骨架,而把一些步骤延迟到子类中。模板方法模式可以让子类不改变一个算法的结构就可以改变算法的某些特定步骤。 说明:有时候,我们经常遇到由一些列步骤构成的过程需要执行,这个过程从高层看是相同的,但有些步骤的实现可能不同,这个时候可以考虑模板方法模式。 其结构图如下: 设计实例(抄试卷): #include using namespace ...
阅读(237) 评论(0)

简单工厂模式、策略模式与工厂方法模式

用三种设计模式实现同一种功能:四则运算。     三种设计模式相同的部分为四则运算类的设计,包括基类,加法运算类,减法运算类,乘法运算类和除法运算类,其代码如下: class CClac { public: virtual int GetResult(int a,int b)=0; }; class CClacAdd:public CClac { public: virtual int ...
阅读(343) 评论(0)

设计模式-代理模式

代理模式:为其他对象提供一种代理以控制对这个对象的访问。     代理模式的使用情况:     1. 远程代理,也就是为了一个对象在不同的地址空间提供局部代表,这样可以隐藏一个对象存在于不同地址空间的事实。     2. 虚拟代理,根据需要创建一个开销很大的对象,通过它来存放实例化需要很长时间的真实对象。     3. 安全代理,用来控制真实对象的访问权限。     4. 智能指引,当调...
阅读(273) 评论(0)

设计模式-装饰模式

装饰模式把每个要装饰的功能放在单独的类中,并在这个类中包含他要装饰的对象,当需要执行特殊行为时,客户端代码就可以根据需要有选择,有顺序的使用装饰功能包装对象了,他的好处就是有效的把类的核心功能和装饰功能区分开了,而且可以去除相关类中重复的装饰逻辑。但是需要注意装饰顺序。     #include #include class Person { private: char name[30]...
阅读(260) 评论(0)

算法导论二:快速排序

快速排序采用的是分治策略,其方法是将一个数组a[p,r]划分为两个子数组a[p,q-1],a[q+1,r],使其左子数组元素中的元素均小于等于a[q],右子数组元素均大于a[q],并递归划分两个子数组。其代码如下:     #include using namespace std; template int partition(T a,int p,int r) { //选择a[r]作为主...
阅读(295) 评论(0)
22条 共2页1 2 下一页 尾页
    个人资料
    • 访问:8381次
    • 积分:226
    • 等级:
    • 排名:千里之外
    • 原创:14篇
    • 转载:8篇
    • 译文:0篇
    • 评论:0条
    文章分类