上一页 1 ··· 4 5 6 7 8 9 下一页
摘要: 《Effective C++》读书摘要最近刚读完侯捷的《Effective C++》,相对来说,这本书的内容比较贴近基础,对于刚掌握C++基础的人会有不少的提高。不过书中还是涉及了不少C++的高级特性,阅读起来需要查阅相关的资料。书中给出了大量的示例和代码来说明具体规则的原理,我按照书中给出的标题将每个条目的关键内容整理如下。一方面是保留一份读书笔记,另一方面也是为了方便日后查阅方便。当然,如果不能从简单摘要的内容回忆起具体信息,到时再查书也不迟。同时也期望大家能从中找到自己没有注意的知识点,有所提高,大牛勿喷~ ☺。(一)、让自己习惯C++一、C++语言联邦多重范型编程语言:过程式、面向对象 阅读全文
posted @ 2012-11-18 10:11 Florian 阅读(15712) 评论(3) 推荐(4) 编辑
摘要: 那些陌生的C++关键字学过程序语言的人相信对关键字并不陌生。偶然间翻起了《C++ Primer》这本书,书中列举了所有C++的关键字。我认真核对了一下,竟然发现有若干个从未使用过的关键字。一时间对一个学了六年C++的自己狠狠鄙视了一番,下决心一定要把它们搞明白!图1红色字体给出的是我个人感觉一般大家都会比较陌生的关键字,下边我们逐个学习。图1 C++ 关键字一、typeid从名字直观看来,该关键字应该是获取语言元素的类型ID。其实它和sizeof类似,是一个类型运算符。有时候代码可能需要获取某个变量或者类型的名字,这时候使用typeid就比较合适。使用格式:typeid(int)或typeid 阅读全文
posted @ 2012-11-07 19:06 Florian 阅读(14035) 评论(5) 推荐(5) 编辑
摘要: 黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的内容,在Windows环境下的黑客必须熟练掌握底层API编程。为了使读者对黑客常用的Windows API有个更全面的了解以及方便日后使用API方法的查询,特将这些常用的API按照7大分类进行整理如下,希望对大家的学习有所帮助。一、进程创建进程:CreateProcess("C:\\windows\\notepad.exe",0,0,0,0,0,0,0,&si,&pi);WinExec("notepad",SW_SHOW);ShellExecute(0,"op 阅读全文
posted @ 2012-09-01 20:49 Florian 阅读(11819) 评论(29) 推荐(16) 编辑
摘要: 远程线程注入引出的问题一、远程线程注入基本原理远程线程注入——相信对Windows底层编程和系统安全熟悉的人并不陌生,其主要核心在于一个Windows API函数CreateRemoteThread,通过它可以在另外一个进程中注入一个线程并执行。在提供便利的同时,正是因为如此,使得系统内部出现了安全隐患。常用的注入手段有两种:一种是远程的dll的注入,另一种是远程代码的注入。后者相对起来更加隐蔽,也更难被杀软检测。本文具体实现这两种操作,在介绍相关API使用的同时,也会解决由此引发的一些问题。顾名思义,远程线程注入就是在非本地进程中创建一个新的线程。相比而言,本地创建线程的方法很简单,系统AP 阅读全文
posted @ 2012-08-30 19:27 Florian 阅读(17357) 评论(34) 推荐(21) 编辑
摘要: Windows字符集的统一与转换一、字符集的历史渊源在Windows编程时经常会遇到编码转换的问题,一直以来让刚接触的人摸不着头脑。其实只要弄清Win32程序使用的字符编码方式就清楚了,图1展示了一个Win32控制台项目的属性中的字符集选项。这里有两个不同的字符集:一个是Unicode字符集,另一个就是多字节字符集MBCS(Multi-ByteCharacterSystem),即熟知的ANSI字符集。图1 Visual Studio Win32项目属性或许有人和我一样对这么一群“凭空出现”的字符集既痛恨又好奇,痛恨的是为什么不使用统一的方式对字符编码,还要在程序中不断的转换。好奇的原因亦是如此 阅读全文
posted @ 2012-08-28 17:28 Florian 阅读(10997) 评论(0) 推荐(5) 编辑
摘要: Windows文件操作基础代码 Windows下对文件进行操作使用的一段基础代码File.h,首先是File类定义:#pragmaonce#include<Windows.h>#include<assert.h>classFile{HANDLEhFile;//文件句柄public:voidopen(LPCWSTRfileName);intread(char*data,intlen);voidmovefp(longdisp,inttype);intwrite(char*data,intlen);voidclose();staticvoidcopy(LPCWSTRsrc,L 阅读全文
posted @ 2012-07-31 18:31 Florian 阅读(1322) 评论(5) 推荐(0) 编辑
摘要: Windows注册表操作基础代码 Windows下对注册表进行操作使用的一段基础代码Reg.h:#pragmaonce#include<assert.h>#include<windows.h>classReg{HKEYhkey;public:voidopen(HKEYroot,char*subKey);//打开注册表键,不存在则创建voiddel(HKEYroot,char*subKey);//删除注册表键voidclose();//关闭注册表键voidsetValue(char*name,char*data);//设置注册表值,不存在则创建voidgetValue(c 阅读全文
posted @ 2012-07-31 16:10 Florian 阅读(2090) 评论(0) 推荐(0) 编辑
摘要: Winpcap基础代码 使用Winpcap进行网络数据的截获和发送都需要的一段代码:#include<PCAP.H>#pragmacomment(lib,"wpcap.lib")//#pragmacomment(lib,"ws2_32.lib")#include<iostream>usingnamespacestd;//回调函数voidpacket_handler(u_char*param,conststructpcap_pkthdr*header,constu_char*pkt_data);intmain(){pcap_if_t 阅读全文
posted @ 2012-07-28 16:13 Florian 阅读(851) 评论(0) 推荐(0) 编辑
摘要: 快速傅里叶变换C++递归算法实现 网上有些算法资料经测试运行结果是错误的,虽然代码的使用的是非递归形式。为了方便验证快速傅里叶变换的准确性,我提供了自己设计的递归算法。 基于时域抽取的“基2”快速傅里叶变换算法代码: Fouier.h文件:#pragmaonce#include"Complex.h"classFouier{Complex*data;voidfft(intstart,intstep,intlen);ComplexW(intk,intn);//e^(-i*2*pi*k/n)public:Fouier(void);~Fouier(void);voidfft();} 阅读全文
posted @ 2012-07-28 15:23 Florian 阅读(1663) 评论(0) 推荐(0) 编辑
摘要: 多柱汉诺塔最优算法设计探究引言汉诺塔算法一直是算法设计科目的最具代表性的研究问题,本文关注于如何设计多柱汉诺塔最优算法的探究。最简单的汉诺塔是三个柱子(A、B、C),因此多柱汉诺塔的柱子个数M≥3。下面从三柱汉诺塔说起,慢慢深入我们要关心的问题。1. 三柱汉诺塔三柱汉诺塔是经典的汉诺塔问题,在算法设计中是递归算法的典型问题。其算法是这样的: 首先把A 柱上面的n- 1 个碟子通过C 柱移到B 柱上【T(n-1)步】,然后把A 柱剩下的一个碟子移到C 柱上【1步】, 最后把B 柱上所有的碟子通过A 柱移到C 柱上【T(n-1)步】。很容易得到算法的递归方程为:T(n)=2*T(n-1)+1,因此 阅读全文
posted @ 2012-07-28 15:08 Florian 阅读(8735) 评论(1) 推荐(5) 编辑
上一页 1 ··· 4 5 6 7 8 9 下一页