摘要:
如何绘制表并写er图 1. 了解需求 2. 2.找实体 3. 3.ER图关系变表, 1对1: 合并表 1对m: 把少的表的主键当做另一个表的外键 m对m: 1.增加关系表 2.两个主键放在新表中当复合主键 3.增加字段 4. 检测合理性:3NF 3范式 初始化命令记住密码: mysqld --ini 阅读全文
posted @ 2020-09-04 20:12
特权E5
阅读(168)
评论(0)
推荐(0)
摘要:
数据库发展 在大数据时代,既要快速查找,又要存储信息量大。所以才会有数据库的发展。 我们发现磁盘每读一次数据花费的代价相同所以我们尽可能的是一次读到最大数据。 伞形区的最大字节数512 假设一个伞形区512 一个节点信息20个 我们就可以放 25个节点 ,之后我们将伞形区当做数组,这样定义25个数组 阅读全文
posted @ 2020-09-04 20:09
特权E5
阅读(250)
评论(0)
推荐(0)
摘要:
MFC消息映射 首先产生钩子,截取所有的消息 包括NCcreate AfxHookWindowCreate(this); void AFXAPI AfxHookWindowCreate(CWnd* pWnd) { //获取线程状态开是否设置钩子,没设置设置一下。 _AFX_THREAD_STATE* 阅读全文
posted @ 2020-09-04 20:00
特权E5
阅读(379)
评论(0)
推荐(0)
摘要:
MFC应用程序中处理消息的顺序 1.AfxWndProc() 该函数负责接收消息,找到消息所属的CWnd对象,然后调用AfxCallWndProc 2.AfxCallWndProc() 该函数负责保存消息(保存的内容主要是消息标识符和消息参数)供应用程序以后使用,然后调用WindowProc()函数 阅读全文
posted @ 2020-09-04 19:43
特权E5
阅读(140)
评论(0)
推荐(0)
摘要:
文档模板管理者类CDocManager它管理应用程序所包含的文档模板CDocTemplate CDocManager类维护一个CPtrList类型的链表m_templateList(即文档模板链表) CSingleDocTemplate类,定义了一个文档模板用于实现单文档界面(SDI)即单文档类 文 阅读全文
posted @ 2020-09-04 19:36
特权E5
阅读(221)
评论(0)
推荐(0)
摘要:
C++设计者在C++使用的早期并没有意识到RTTI(运行时类型检查)的重要性,后来随作框架结构的类库出现及其应用越来越广泛,RTTI就变得越来越重要了。例如下面的这个语句: CWnd *pWnd;任何人都知道对象pWnd是CWnd类型的指针。但是如果有一个类CView是从CWnd派生来的,对于下面的 阅读全文
posted @ 2020-09-04 19:32
特权E5
阅读(488)
评论(0)
推荐(0)
摘要:
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 元字符 描述 \ 将下一个字符标记符、或一个向后引用、或一个八进制转义符。例如,“\\n”匹配\n。“\n”匹配换行符。序列“\\ 阅读全文
posted @ 2020-09-04 19:26
特权E5
阅读(114)
评论(0)
推荐(0)
摘要:
IP 协议头 struct ip_hdr { unsigned char h_len : 4; //length of header unsigned char version : 4; //Version of IP unsigned char tos; //Type of service uns 阅读全文
posted @ 2020-09-04 19:21
特权E5
阅读(251)
评论(0)
推荐(0)
摘要:
一个服务端,被多个用户连接,为了节约环境资源,减少线程 。 轮询 缺点:客户端多的情况下,询问时间大大大于接受时间浪费资源,一般为64位以下用户体验不到卡顿的效果 //设置异步套接字,使可以接受数据不等待 设置套接字阻塞和非阻塞 u_long block = 1; ioctlsocket(s, FI 阅读全文
posted @ 2020-09-04 19:18
特权E5
阅读(146)
评论(0)
推荐(0)
摘要:
Windows提供了一个模拟键盘操作的API函数keybd_event(),使用该函数可以模拟相应的键盘动作。keybd_event()函数能触发一个按键事件,也就是说会产生一个WM_KEYDOWN或WM_KEYUP消息。该函数原型如下: VOID keybd_event( BYTE bVk, // 阅读全文
posted @ 2020-09-04 18:45
特权E5
阅读(314)
评论(0)
推荐(0)
摘要:
基础函数 客户端 Socket() 产生一个socket; 填写一个sockaddr in结构体 使用connect进行服务器连接 如果成功 则返回大于0的值 向服务器发送信息需要send函数 Send函数需要指定一个socket 缓冲区 发送字节数 Recv函数同send函数 Recv可以指定本次 阅读全文
posted @ 2020-09-04 18:43
特权E5
阅读(123)
评论(0)
推荐(0)
摘要:
socket是一个接口,在用户进程与TCP/IP协议之间充当中间人,完成TCP/IP协议的书写,用户只需理解接口即可。 将socket通信类比为打电话这一生活场景。这里我把TCP服务器比作政府某一服务部门能,TCP客户端比作企业中某一部门电话,描述这一过程,恰好就像是socket通信,服务部门提供服 阅读全文
posted @ 2020-09-04 18:35
特权E5
阅读(424)
评论(0)
推荐(0)
摘要:
网络编程 ISP(Internet Service Provider),互联网服务提供商,即向广大用户综合提供互联网接入业务、信息业务和增值业务的电信运营商。ISP是经国家主管部门批准的正式运营企业,享受国家法律保护。 Tcp/ip协议(传输控制协议/互联网协议)不是简单的一个协议,而是一组特别的协 阅读全文
posted @ 2020-09-04 18:31
特权E5
阅读(295)
评论(0)
推荐(0)
摘要:
1. 线程同步 问题:多个线程对同一个回调函数操作,导致一段代码未执行完就开始切换下一个线程,造成数据混乱。为了不造成混乱,使用了限定操作 同步 1.1 原子操作 -- 单值 Interlocked function 函数里有关原子操作 互锁函数同步对多个线程共享的变量的访问。它们的目的是防止线程在 阅读全文
posted @ 2020-09-04 18:26
特权E5
阅读(235)
评论(0)
推荐(0)
摘要:
1. 内核同步对象(信号和互斥体) 1.1 信号 控制多线程等待数量问题 HANDLE CreateSemaphore( LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, 安全控制,一般直接传入NULL。 LONG lInitialCount, 初始资源数量 阅读全文
posted @ 2020-09-04 18:19
特权E5
阅读(152)
评论(0)
推荐(0)
摘要:
钩子 一般钩子放在dll里面用导出函数封装 在程序里调用函数即可 HHOOK WINAPI SetWindowsHookEx( __in int idHook, \\钩子类型 __in HOOKPROC lpfn, \\回调函数地址 __in HINSTANCE hMod, \\实例句柄 __in 阅读全文
posted @ 2020-09-04 18:15
特权E5
阅读(183)
评论(0)
推荐(0)
摘要:
sdk软件开发工具包(缩写:SDK、外语全称:Software Development Kit)一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。 [1] 软件开发工具包括广义上指辅助开发某一类软件的相关文档、范例和工具的集合。 软件开发工具包是一些 阅读全文
posted @ 2020-09-04 14:11
特权E5
阅读(928)
评论(0)
推荐(0)
摘要:
“消息循环”,实际是程序循环即Windows 中有一个系统消息队列,对于每一个正在执行的Windows应用程序,系统为其建立一个“消息队列”,即应用程序队列,用来存放该程序可能创建的各种窗口的消息。应用程序中含有一段称作“消息循环”的代码,用来从消息队列中检索这些消息并把它们分发到相应的窗口函数中. 阅读全文
posted @ 2020-09-04 14:10
特权E5
阅读(187)
评论(0)
推荐(0)
摘要:
1. 文件映射 内存映射文件,是由一个文件到一块内存的映射。Win32提供了允许应用程序把文件映射到一个进程的函数 (CreateFileMapping)。内存映射文件与虚拟内存有些类似,通过内存映射文件可以保留一个地址空间的区域,同时将物理存储器提交给此区域,内存文件映射的物理存储器来自一个已经存 阅读全文
posted @ 2020-09-04 14:08
特权E5
阅读(635)
评论(0)
推荐(0)
摘要:
BOOL WINAPI CreatePipe( _Out_PHANDLE hReadPipe, 返回一个可用于读管道数据的文件句柄 _Out_PHANDLE hWritePipe, 返回一个可用于写管道数据的文件句柄 _In_opt_LPSECURITY_ATTRIBUTES lpPipeAttri 阅读全文
posted @ 2020-09-04 13:35
特权E5
阅读(235)
评论(0)
推荐(0)
摘要:
1、create()针对不是通过资源文件上拖拉进度条控件生成的进度条,需要用此函数创建一个。 2、SetRange()设置进度条的起始值和终止值。 3、SetPos()设置进度条的当前位置。 4、OffSetPos()移动进度条一段距离 5、SetStep()设置步长 6、StepIt()按照步长来 阅读全文
posted @ 2020-09-04 13:29
特权E5
阅读(213)
评论(0)
推荐(0)
摘要:
使用句柄 1. 跨进程使用句柄 1)子进程继承父进程句柄的方式 将父进程的句柄放到子进程的句柄表里 1- 句柄本身可以被继承 2- Createprocess的参数bInheritHandles为TRUE 3- 继承已经打开的句柄 SECURITY_ATTRIBUTES sa; sa.nLength 阅读全文
posted @ 2020-09-04 13:28
特权E5
阅读(935)
评论(0)
推荐(0)
摘要:
DllMain BOOL WINAPI DllMain( HANDLE hinstDLL, 句柄 DWORD dwReason, 调用实际 LPVOID lpvReserved); 指定初始化和清理的其他方面 对于一个Dll模块, DllMain函数是可选的 dll加载和卸载的时候被调用, dll初 阅读全文
posted @ 2020-09-04 13:25
特权E5
阅读(304)
评论(0)
推荐(0)
摘要:
windows中静态库lib和动态dll的区别及使用方法 1. 静态库lib和动态dll的区别 ~1. 静态库 编译链接的流程: 1) 预处理 2) 编译, cpp -> obj文件 3) 链接, obj -> exe文件 静态库, 多个obj文件的集合, 多个obj文件合成一个lib 使用静态库: 阅读全文
posted @ 2020-09-04 12:50
特权E5
阅读(485)
评论(0)
推荐(0)
摘要:
发送消息 SendMessage -- 直接将消息发送给窗口过程 PostMessage -- 将消息投递到消息队列 控件 控件是指对数据和方法的封装。控件可以有自己的属性和方法,其中属性是控件数据的简单访问者,方法则是控件的一些简单而可见的功能控件创建过程 当控件自身状态改变时,会向父窗口发送送W 阅读全文
posted @ 2020-09-04 12:39
特权E5
阅读(117)
评论(0)
推荐(0)
摘要:
MFC的类继承层次 CObject // 动态类型识别和序列化 CCmdTarget // 消息循环和消息派发 CWnd // 窗口的封装 CDialog //对话框 CDialogEx CAboutDlg CFrameWnd //代表主窗口 CMainFrame CView // 代表客户区 CS 阅读全文
posted @ 2020-09-04 12:25
特权E5
阅读(356)
评论(0)
推荐(0)
摘要:
//派发消息到对应的窗口过程函数 LRESULT DispatchMessage( CONST MSG *lpmsg // message information 消息地址 ); 绘图消息 WM_PAINT 消息来的时机: 当产生无效区的时候,系统会发送WM_PAINT消息。 无效区 -- 窗口需要 阅读全文
posted @ 2020-09-04 12:03
特权E5
阅读(140)
评论(0)
推荐(0)
摘要:
链表定义: n个节点离散分配;彼此通过指针相连;每个节点只有一个后续节点,首节点没有前驱节点,尾节点没有后续节点。 专业术语: 首节点:第一个有效节点 尾节点:最后一个有效节点 头节点:头节点的数据类型和首节点的数据类型相同。第一个有效节点之前的那个节点;头节点并不存放存放有效数据;加头节点的目主要 阅读全文
posted @ 2020-09-04 11:53
特权E5
阅读(373)
评论(0)
推荐(0)
摘要:
数据:凡是可以输入计算机并被计算机处理的东西.联系人,学生,整形数据,字符串,浮点数等等. 结构 : 数据与数据之间的特定关系 * 逻辑关系 * 线性结构(队列) * 非线性(树型结构, 图型机构) * 物理关系 * 顺序存储(数据元素与数据元素之间的地址是连续的) * 链式存储(数据元素与数据元素 阅读全文
posted @ 2020-09-04 11:49
特权E5
阅读(98)
评论(0)
推荐(0)
摘要:
时间复杂度 算法: 解决问题的步骤, 解决问题的有限执行语句序列 什么好的算法?? 耗时少,占用空间少的算法是好算法. 算法时间评估前提:数据量相同, 算法的语句执行时间默认相同,最后评估算法的语句执行次数 常见的大O记法 常量阶:O(1) 线性阶:O(n) 平方阶:O(n^2) 指数阶:O(2^n 阅读全文
posted @ 2020-09-04 11:47
特权E5
阅读(114)
评论(0)
推荐(0)
摘要:
下载cocos到本机 配置环境变量后 new 创建一个新的工程。 -h, --help 显示帮助信息。 -p PACKAGE_NAME, --package PACKAGE_NAME 设置工程的包名。 com.表示公司 Pri.表示个人 -d DIRECTORY, --directory DIREC 阅读全文
posted @ 2020-09-04 11:25
特权E5
阅读(274)
评论(0)
推荐(0)
摘要:
Shared_ptr 包含头文件memory c++智能指针,强指针 Shared_ptr<CA> ptr(new CA) Shared_ptr<CB> ptr(new CB) Shared_ptr<CA> ptrA0 = ptrA; Int nVal = ptrA->GetVal(); nVal 阅读全文
posted @ 2020-09-04 11:13
特权E5
阅读(249)
评论(0)
推荐(0)
摘要:
抽象类 纯虚函数,虚函数后面加 = 0 含有至少一个纯虚函数的类称之为抽象类 抽象类不能实例化对象 纯虚函数声明不能含有函数体,函数体可以放在类外 纯虚析构函数必须有函数体 如果子类没有重写父类的纯虚函数,子类仍然是个抽象类 应用 规范化派生类的接口,和某些不适合生成对象的父类 Override和f 阅读全文
posted @ 2020-09-04 11:06
特权E5
阅读(368)
评论(0)
推荐(0)
摘要:
winhex应用中显示如下图所示 以上两图说明不同的无参函数名全部都是函数名@@YAXXZ 两个int用hh@表示 Char用d表示 第四位表示参数为位 为了探究前面的数改了一下类型 可以看到改变int第三位由x变成了h 可以看到调用约定是第一二位第三位是函数类型第四位是参数位 阅读全文
posted @ 2020-09-04 10:42
特权E5
阅读(195)
评论(0)
推荐(0)
摘要:
默认参 l 允许多个默认参 l 从右向左给默认参数,不间断 l 默认参只能放到声明或者定义中 l c++ 允许给函数形参提供默认实参,当此参数没有指定实参的时候,使用默认实参;如果指定了实参, 则使用指定的实参 语法,形参后跟 = 默认实参 引用 l c++ 允许定义一个引用变量,这个引用变量和一个 阅读全文
posted @ 2020-09-04 10:25
特权E5
阅读(181)
评论(0)
推荐(0)
摘要:
位段: Struct MYbit{ Int a :10;//表示a占用10位 Int b :1;//表示b占用1位 Int c :10;//表示c占用10位 } 位段可以进行赋值操作 如果赋值的大小超过位段所能表示的最大数 那么首先把该值展为2进制 取后n位(n是该位段的位数); 文件操作函数: t 阅读全文
posted @ 2020-09-04 10:21
特权E5
阅读(384)
评论(0)
推荐(0)
摘要:
首先写了一个简单的申请堆空间 给nCount赋值5,申请的空间大小为20 。我们首先看到pstr的内存地址 将这个地址减0x20得到地址 阅读全文
posted @ 2020-09-04 09:57
特权E5
阅读(127)
评论(0)
推荐(0)
摘要:
#pragma once //迭代器模板 可以使用类模板 #include <exception> #include <string> using namespace std; template<typename T> class MyVector { public: /** 迭代器 **/ cla 阅读全文
posted @ 2020-09-04 08:03
特权E5
阅读(299)
评论(0)
推荐(0)
摘要:
#pragma once //迭代器的实现 class MyVector { public: /** 迭代器 **/ class Iterator { friend class MyVector; public: Iterator(int* pos) :m_pos(pos) { } Iterator 阅读全文
posted @ 2020-09-04 08:01
特权E5
阅读(718)
评论(0)
推荐(0)

浙公网安备 33010602011771号