松狮

如果你想拥有你从未有过的东西, 那么你必须去做你从未做过的事情!

详解C++类的内存分布结构

我们来看看编译器是怎么处理类成员内存分布的,特别是在继承、虚函数存在的情况下。 工欲善其事,必先利其器,我们先用好Visual Studio工具,像下面这样一步一步来: (1)右键CPP文件,属性;  (2)先选择左侧的C/C++->命令行,然后在其他选项这里写上/d1 reportAll...

2016-04-26 19:51:48

阅读数:743

评论数:0

概览C++之const

1、C语言中const 与 C++中的const void main() { const int a = 10; int *p = (int*)&a; *p = 20; printf("%d", a); } 比较上述代码在C中和C++中运行结果:C:打印20;C++:打...

2016-04-10 00:06:22

阅读数:2932

评论数:1

C++技术点积累(8)——STL之算法汇总

C++技术点积累(8)——STL之算法汇总: 一、算法概述 1)算法部分主要由头文件,和组成。        是所有STL头文件中最大的一个,其中常用到的功能范围涉及到比较、交换、查找、遍历操作、复制、修改、反转、排序、合并等等。        体积很小,只包括几个在序列上面进行简单数学运算的模板...

2015-09-27 16:32:42

阅读数:1239

评论数:0

C++技术点积累(7)——STL之容器汇总

C++技术点积累(7)——STL(标准模板库): STL的从广义上讲分为三类:algorithm(算法)、container(容器)和iterator(迭代器),容器和算法通过迭代器可以进行无缝地连接。STL的一个重要特点是数据结构和算法的分离,这种分离使得STL变得非常通用。

2015-09-24 09:51:34

阅读数:1139

评论数:1

WINVNC源码分析(五)——vnchooks

VNCHOOKS是一个设置全局钩子的动态链接库。 先看入口函数 view plain BOOL WINAPI DllMain (HANDLE hInst, ULONG ul_reason_for_call, LPVOID lpReserved)  {      // Find out wh...

2017-02-24 16:53:20

阅读数:387

评论数:0

WINVNC源码分析(四)——IO之rdr库

rdr是winvnc用来io操作的一个库工程。 IO操作无非两种,写入和读取数据,所以这里每个类都相应地分成了IN和OUT两种操作,先分析IN。     view plain class InStream {  public:    virtual ~InStream()...

2017-02-24 16:51:54

阅读数:394

评论数:0

WINVNC源码分析(三)——omni_thread库

omni_thread是一个C++的跨平台的线程包装库。 接口文件omnithread.h 可以看出一般的跨平台编码的方式: 首先通过宏来判断目前所在的操作系统平台(如果你编译的时候出现了“No implementation header file”的提示,请在此文件查找对应的宏,我用的是W...

2017-02-24 16:50:11

阅读数:396

评论数:0

WINVNC源码分析(二)——图像

WINVNC是用bitmap格式保存桌面图像的,所以先补充下相关知识。   图像“像素”(Pixel):把影像放大数倍,会发现这些连续色调其实是由许多色彩相近的小方点所组成,这些小方点就是构成影像的最小单位“像素”(Pixel)。 图像分辨率:表示每一个方向上的像素数量,比如640X480,...

2017-02-24 16:48:04

阅读数:696

评论数:0

WINVNC分析(一)——源码执行流程

下面的内容是用 VC.NET 的调试器调试的整个源码而确定的执行流程. 在分析代码时尽量不要静态的分析代码,这样速度很慢的。利用调试器我们可以通过简单的设置断点来跟踪整个执行流程。 WINVNC 调试其整体流程   在 WinMain中进行 (1) 初始化套接字库 VSocketSys...

2017-02-24 16:45:53

阅读数:890

评论数:0

UltraVNC源码编译运行

安装:汇编编译器nasm和DirectX SDK (June 2010)(SDK安装出错的话http://my.oschina.net/szm/blog/52039) 下载源代码:UltraVNC VS打开源码中的winvnc工程,会导入所有工程,删除如图所示的工程(对一般使用...

2017-02-23 17:13:45

阅读数:1199

评论数:0

UltraVNC(TightVNC、WinVNC)源码分析文档

Posted on 2005-10-10 09:56 Piccolo Goo 阅读(3248) 评论(1)  编辑 收藏                                      Content List: System Shell IActiveDesktop SetP...

2017-02-23 15:05:32

阅读数:2542

评论数:1

TightVNC2.8.5在VS2010下编译和错误解决

一、编译: tightvnc版本:tightvnc-2.8.5-src-gpl 编译工具IDE:VS2010 系统环境:Win7-32 库文件依赖:Windows Kits (下载链接:https://developer.microsoft.com/en-us/windows/downloa...

2016-12-18 15:41:20

阅读数:893

评论数:1

0-1背包问题、贪心算法、动态规划

0-1背包问题

2016-08-29 18:32:10

阅读数:8752

评论数:1

最长递增子序列(一维、二维)

1、一维: void main01() { vector data = { 2, 1, 6, 4, 5, 2, 7, 4}; vector len(data.size(), 1); //记录长度的辅助数组 int maxx = len[0]; for (int i =...

2016-08-20 21:25:51

阅读数:414

评论数:0

sprintf、snprintf、sscanf、itoa、atoi、cin、string与进制转换

一、sprintf函数(是C标准库函数)        功能:把格式化的数据写入某个字符串缓冲区。        头文件:stdio.h        原型:int sprintf ( char *buffer, const char *format, [argument] …);       ...

2016-08-15 17:05:40

阅读数:1343

评论数:0

全排列、判断栈序、火车进出站

1、全排列: void myFullSort(vector data, int k, int end) { int i; if (k > end) { for (i = 0; i <= end; i++) { cout << data[i] <&l...

2016-08-10 20:43:27

阅读数:896

评论数:0

大数运算和大数类

1、首先看一个小问题: 整型数组、字符型数组、vector在未初始化的情况下: int main() { int data[5]; char c[5]; vector v(5); vector v1(5); vector v2; cout << "int[]:...

2016-08-09 22:14:36

阅读数:589

评论数:0

操作符(运算符)重载注意事项(含模板类中<<、>>重载)

一、用 友元全局函数 或者  成员函数  重载运算符       关键区别是:成员函数有this指针,友元函数没有成员指针,传递参数的方式不同,实现代码不同。       对于:objectL  op  objectR       成员函数重载 解释为: objectL.operator op ...

2016-08-09 22:13:16

阅读数:892

评论数:0

Nginx服务器简介

1、Nginx简介 (1)三大功能:A.web服务器; B.反向代理服务器(负载均衡); C.邮件服务器(不常用); 反向代理服务器模型: (2)Nginx的优势: 2、Nginx的工作原理 (1)Nginx进程模型:      Ngin...

2016-08-09 17:20:13

阅读数:351

评论数:0

epoll并发服务器

1、基本模型 (1)多进程并发服务器:http://blog.csdn.net/songshimvp1/article/details/51819765 (2)多线程并发服务器:http://blog.csdn.net/songshimvp1/article/details/51895311 (3...

2016-08-08 19:24:56

阅读数:526

评论数:0

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