- 博客(121)
- 资源 (41)
- 收藏
- 关注
原创 数据库_Redis_Linux_C++_03
源码安装参考Redis官网https://redis.io/download我的Linux环境是一个云服务器,配置如下:Linux VM-0-16-ubuntu 4.4.0-157-generic #185-Ubuntu SMP Tue Jul 23 09:17:01 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux下载wget https://download.redis.io/releases/redis-6.2.6.tar.gz出现如下信息表示下载成功-
2022-03-16 00:49:48 335
原创 数据库_Redis_Python_02
Redis安装安装可用于Python编程语言操作的Redis库。命令行安装方式如下:pip install redis连接RedisPython Redis提供了两种连接方式:普通连接方式和连接池连接方式。需要注意的是: Redis中字符串返回值类型是bytes类型普通连接方式redis_conn = redis.Redis(host='127.0.0.1', port=6379)连接池连接方式redis_pool = redis.ConnectionPool(host='127.0
2022-03-13 17:26:40 2912
原创 数据库_Redis_详解_00
背景Redis是一个基于键值对(Key-Value)的数据结构,可以用来作为数据库、缓存和消息队列。常用数据结构string 字符串list 列表hash 哈希set 集合zset 有序集合bitmap 位图
2022-03-13 14:08:01 1719
原创 数据库_Redis_Windows_C++_01
开发环境系统:Windows 10 教育版安装RedisRedis官网没有提供Windows版本,不过微软团队维护了一个Windows版本[https://github.com/MicrosoftArchive/redis/releases],如下图所示(https://github.com/MicrosoftArchive/redis/releases)。...
2022-03-12 16:36:55 2205
原创 C++实现线程死锁
先上代码#include <mutex>#include <thread>//#define SLEEPusing namespace std;class LeftRightDeadLock{public: void LeftRight(int index) { mtx_left.lock(); printf("%d LeftRigh...
2019-10-12 00:13:26 443
原创 C++第三课--之一(对象)
类和对象广义上的类和对象比如说世界上有一个人类,它有一个共同的特征,比如鼻子、眼睛,我们称为属性; 人类还有一些特定的能力,比如吃喝拉撒,我们称之为方法。 但是人类是一个虚的,他是很多的人抽象出来的,最后成为一个特征,拥有这些特征的称之为人类。 与类相对应的是一个对象,对象是一个实体,这个实体是活生生的存在的。编程中的类和对象在C++中使用class来代表一个类,我们用变量来代表一个属性,用函
2019-09-06 00:15:03 345
原创 Windows编程_Lesson008_内存_内存修改器
内存修改器修改指定进程名字中的内存单线程版本#include <Windows.h>#include <stdio.h>#include <vector>// 第一次查找void FirstFind(HANDLE hProcess, BYTE *pBuffer, DWORD dwPageSize, DWORD dwVal, std::vector<DWORD> &vecAddr){
2019-09-06 00:14:34 206
原创 情感分析项目
1. 模型理论与应用以下几个问题都是比较经典的问题,会对模型的深入理解会有很大的帮助。 特别是对于逻辑回归的二次导数的求解过程可以用来证明一个函数是否凸函数。1.1 逻辑回归相关假设我们有训练数据D={(x1,y1),...,(xn,yn)}D=\{(\mathbf{x}_1,y_1),...,(\mathbf{x}_n,y_n)\}D={(x1,y1),...,(xn,yn)}, ...
2019-06-08 21:39:15 884 3
原创 简单的问答系统
1. 读取文件,并把内容分别写到两个list里(一个list对应问题集,另一个list对应答案集)import jsonimport time# 分数(5)def read_corpus(file_path): """ 读取给定的语料库,并把问题列表和答案列表分别写入到 qlist, alist 里面。 在此过程中,不用对字符换做任何的处理(这部分需要在 Part 2.3...
2019-06-08 20:55:56 371
原创 中文分词工具
说明此项目需要的数据:综合类中文词库.xlsx: 包含了中文词,当做词典来用以变量的方式提供了部分unigram概率 word_prob举个例子: 给定词典=[我们 学习 人工 智能 人工智能 未来 是], 另外我们给定unigram概率:p(我们)=0.25, p(学习)=0.15, p(人工)=0.05, p(智能)=0.1, p(人工智能)=0.2, p(未来)=0.1, p(是...
2019-06-08 20:08:55 1251
原创 C++ RPC(远程过程调用)
目的最近由于摩尔定律已经不太适用,随着大数据、计算量不断增加,导致单机处理能力不能满足需求,所以需要分布式计算,这就需要RPC(远程过程调用),下面简单介绍一下这个demo,来自于GitHub上的一个项目client代码#include &lt;string&gt;#include &lt;iostream&gt;#include &lt;ctime&gt;#include "but
2018-11-05 14:21:16 18552 10
原创 开源C++ Windows Service程序
目的由于Windows C++ 没有现成的Windows server程序的开发框架,而C#则有,所以为了方便大家以及我以后使用C++更方便的开发Windows server程序,特意写此文。Github源码地址主要代码如下CppWindowsService.cpp文件#pragma region Includes#include &lt;stdio.h&gt;#include &l...
2018-11-03 20:44:47 4196 2
原创 通用的单例模式实例
为什么使用单例模式使用Head First这本书当中的一段有趣的对话来说明为什么使用单例模式。 开发人员:这有什么用处?大师:有一些对象其实我们只需要一个,比方说:线程池(threadpool)、缓存(catch)、对话框、处理偏好设置和注册表(registry)的对象、日志对象,充当打印机、显卡等设备的驱动程序的对象。事实上,这类对象只能有一个实例,如果制造出多个实例,就会导致许多问题...
2018-06-30 23:16:07 698
原创 PoEdu_反汇编教程_Lesson001_什么是反汇编
什么是反汇编?反汇编(Disassembly)来源于百度百科:就是把目标代码转换为汇编代码的过程,也可以说是把机器语言转换为汇编语言代码、低级转高级的意思,常用语软件破解、外挂技术、病毒解析、逆向工程、软件汉化等领域。需要的工具及知识要有Visual Studio编译器,我们使用的是vs2015版本;反汇编软件,x64dbg;熟悉C++编程语言。x64dbg与vs反...
2018-05-12 23:43:09 387
原创 Windows核心编程_动态链接库_DLL基础_DLL的总体运行情况
为了全面地了解DLL如何运行,以及开发者和系统如何正确地使用DLL,我们首先来研究一下DLL的基本运行机理。下图概括了DLL的各构件是如何链接在一起的。 现在,我们关注的焦点是可执行模块和DLL模块之间是如何进行隐式链接的。隐式链接是目前最为常用的链接类型。Windows同时支持显示链接(显示链接将在第20章加以讨论)。 在下图中可以看到,当一个模块(例如一个可执行文件)使用DLL中的函数和变...
2018-05-01 22:46:31 259
原创 Windows核心编程_动态链接库_DLL基础_DLL与进程的地址空间
通常创建一个DLL要比建立一个应用程序容易,因为DLL包含一组可以被任何应用所使用的自治(autonomous)函数。在DLL中通常没有支持处理消息循环或创建窗口的代码。一个DLL只是一组源代码模块的集合。其中每个模块包含应用程序(可执行文件)或另一个DLL将要调用的一组函数。当所有的源代码文件编译后,就像应用程的可执行文件那样被链接程序所链接。然而,对于一个DLL,必须要为链接程序设定DLL开关...
2018-04-03 23:57:30 615
原创 Windows核心编程_动态链接库_DLL基础_简介
从微软的第一个版本操作系统开始,动态链接库(dynamic-Link libraries,DLL)就一直是Windows的基石。Windows API的所有函数都包含在DLL中,其中3个最重要的DLL分别是:Kernel32.dll:它包含管理内存、进程和线程的函数;User32.dll:它包含处理用户界面任务的一些函数,例如窗口的创建以及消息的发送等;GDI32.dll:它包含绘制图形和显示
2018-04-03 23:45:45 342
原创 C++高级特性--函数模板
面向对象编程面向对象编程(OOP)和泛型编程都能处理在编写程序时不知道类型的情况。不同之处在于:OOP能处理类型在程序运行之前都未知的情况;而在泛型编程中,在编译时候就能知道类型了。 比如,标准库为每一个容器提供了单一的,泛型的定义,如vector。我们可以使用这个泛型定义来定义很多类型的vector,它们的差异在于包含的元素类型不同。 模板是C++中泛型编程的基础。一个模板就是一个创建类...
2018-04-01 00:28:17 569
原创 左值问题
i++与++i的赋值问题以前在编程时。没有注意这样一件事情,一个整型变量,做前加加和后加加后,能否再给它赋值???今天就让我们验证一下吧!!! 我们写下面一段程序int main(){ int iIndex = 0; ++iIndex = 20; iIndex++ = 10; return 0;}一些功能强大的编译器在不不编译的情况下就已经能够提示iIndex++
2018-03-13 20:17:08 282
原创 C++中的虚函数
为什么要把基类中的虚函数设置为虚函数我们先看一个例子,这个例子是基类中的析构函数没有virtual修饰,也就是普通的析构函数,代码如下所示:#include <iostream>class Base{public: Base() { std::cout << "Base()" << std::endl; }...
2018-02-08 01:01:03 144
原创 STL_Lesson005_002
容器中的与算法中的重名函数array: fill Fill array with value (public member function ) fill Fill range with value (function template ) swap Swap content (public member function ) swap Exch
2017-12-19 00:39:10 183
原创 STL_Lesson005_001
#include <iostream>#include "my_vector.h"#include "my_list.h"#include "my_deque.h"#include "my_stack.h"#include "my_queue.h"int main(){ int len = 0; std::cout << "test myvector begin.....
2017-12-19 00:36:39 164
原创 STL-Lesson004_002
#ifndef _MYALGORITHM_H_#define _MYALGORITHM_H_#include <iterator>#include <random>#include <type_traits>#include <tuple>namespace PoEdu{ // all_of // Test condition on all elements in ra
2017-12-19 00:32:26 224
原创 STL-Lesson004_001
#ifndef _MYALGORITHM_H_#define _MYALGORITHM_H_#include <iterator>#include <tuple>namespace PoEdu{ // all_of // Test condition on all elements in range (function template ) template<type
2017-12-19 00:30:33 262
原创 STL-Lesson003_学生管理系统
学生管理系统#define _CRT_SECURE_NO_WARNINGS#include <iostream>#include <fstream>#include <list>#include <functional>#include <array>#include <ctime>#include <Windows.h>#define MAX_STU 500000 // 学生
2017-12-19 00:27:25 541
原创 STL-Lesson002-MyList
MyList/*MyList.h*/#ifndef _MYLIST_H_#define _MYLIST_H_namespace PoEdu{ //template<typename T> template<typename T> class MyList { public: struct node {
2017-12-19 00:18:40 195
原创 STL-Lesson001_2_实现MyStack类
MyArray/*MyArray.h*/#ifndef _MYARRAY_H_#define _MYARRAY_H_#include <limits>namespace PoEdu{ template<typename T> class MyArray { public: // Member functions MyArray()
2017-12-19 00:07:37 434
原创 STL-lesson001_1_模板实现Array类
/*MyString.h*/#ifndef _MYSTRING_H_#define _MYSTRING_H_#define _CRT_SECURE_NO_WARNINGS#include <cstring>#include <limits>#include <string>namespace PoEdu{ class CMyString { public:
2017-12-19 00:01:00 195
原创 Windows Practice_作业 Easy QQ的实现
QQ原理对于qq这样的聊天软件来说,简单的来讲,它有一个服务端、多个客户端,因为服务端只有一个,所以也就没什么区别,而所有的客户端也是一模一样。 每个客户端只能通过向服务端发送消息,服务端通过解析,从而决定下一步怎样做。 比如一个客户端1想给客户端2发送一条“Hello”的消息,服务器收到后,就会将这条消息发送给客户端2(这里所说的都是在线的,不在线的情况暂不考虑)。WSAAsyncSelect
2017-10-03 14:20:12 446
原创 Windows Practice_Socket 错误封装
UDP简单通讯例子需要注意的是: inet_addr函数如果使用的是VS2014以上的库编译时,会报错,所以我们需要选择兼容XP的编译方式,具体设置在项目属性中设置。如图所示: 服务端// SocketUDPServer.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <WinSock2.h>#include <Windows.h>#i
2017-10-03 12:45:08 326
原创 Windows Practice_Socket
TCP/IP在世界各地,各种各样的电脑运行着各自不同的操作系统,从而为大家服务,这些电脑在表达同一种信息的时候使用的方法千差万别。就好像圣经中上帝打乱了各地人的口音,让他们无法合作一样。计算机使用者意识到,计算机只是单兵作战并不能发挥太大的作用。也只有把它们联合在一起,电脑才会发挥出它最大的潜力。于是人们就想方设法的用电线或者光纤将电脑连接到了一起。 但是简单的连到一起是远远不够的,就好像语言不通
2017-10-03 11:37:57 360
原创 Windows Practice_Dll&Hook_DetourHook库
DetoursDetours是经过微软认证的一个开源软件,下载地址,虽然是开源软件,但是它又分成了两个版本,分别是:Detours Professional 3.0 is available for commercial use.Detours Express 3.0 is available for immediate download under a no-fee license for r
2017-10-03 01:13:41 702
原创 Windows Practice_Dll&Hook_封装IAT Hook
进程保护器的实现本程序实现了一个简单的暴力的进程保护器,其原理也很简单,就是修改导入表,挂钩TerminateProcess函数,因为这个函数可以远程无条件的结束其它进程,所以我们要挂钩这个函数。 因为每一个程序都有可能结束要保护的程序,所以我们必须以Dll的形式注入到每一个进程中,这就涉及到注入的问题了,而Windows给我们提供了一个简单的全局挂钩的函数,即SetWindowsHook函数。
2017-09-24 12:32:19 397
原创 Windows Practice_Dll&Hook_IAT Hook
PE结构PE结构时Windows中一个比较大的结构体,它的整个结构体图如下所示: 给MessageBoxW函数挂钩我们自己的函数就是我们挂钩之后,调用MessageBoxW函数后,会进入到我们自己的函数中执行我们自己的代码。挂钩还原之后,还可以正常的调用MessageBoxW函数,这就是这个测试程序的功能。// IATHookDemo.cpp : 定义控制台应用程序的入口点。//#includ
2017-09-24 11:30:55 301
原创 Windows Practice_Dll&Hook_Hook是什么?
Hook是什么?Hook能够改变软件的功能,比如添加新功能和修改原功能的执行流程。使用Hook是针对于没有源码的情况下才使用的,如果有源码,就没必要Hook了。Hook是如何改变程序的流程的程序块程序块结构(program block struction)是一种程序结构形式。这种结构将整个程序分为若干个信息快或子程序块,使程序变得清晰,便于阅读和修改。 所以程序中的每一块,都是Hook的一个点。作
2017-09-24 11:06:48 343
原创 Windows Practice_Dll&Hook_消息钩子
DllDll就是我们通常所说的动态链接库(Dynamic Link Library),它和应用程序在本质是没有任何区别的,它也是一个可执行文件,它们都有相同的PE结构。 但是两者在应用上面还是有一些区别的,Dll一般作用exe应用程序的补充体,它是一个模块,用来被exe文件加载。 在Windows中有一部分exe文件也是能够被加载的,比如.oxc后缀的控件格式。为什么大部分应用程序喜欢使Dll?
2017-09-24 10:20:39 373
原创 Windows Practice_文件_文件分割器(三)
两种开发方式瀑布式开发 有需求 -> 分析 -> 建模 -> 编码 -> 维护 所有的类全部是自己设计编码的敏捷开发 需求 -> 编码 -> 重构(建模) -> 编码 需求总是变化的 -> 代码也需要变化 所谓的敏捷开发就是拿着开源项目修改为自己的项目,随着时间的推移,改变的越来越多的内容,最后可能将原来开源项目中的所有内容都改为自己的内容。当前类的性质, 类方法及类成员设计的时候
2017-09-17 23:33:20 309
原创 Windows Practice_文件_文件分割器(二)
文件分割器实现时注意的几点分割文件的头信息结构体的设计,如果里面需要存储字符串的信息,我们必须使用字符串数组来存储,而不能使用类似于CString、string等字符串对象来存储,因为使用这些对象在存储的时候还好,可以知道它的长度进行文件的写入,但是在读取的时候就会出现问题了,因为不知道读取多少。 解决方法有两个: 1. 在头文件信息结构体中加上构造函数和一些其它的辅助函数(这样就相当于类的功能
2017-09-17 11:02:33 363
win32diskimager-1.0.0-install.exe.zip
2019-07-10
jdk-8u152-docs-all.rar
2017-12-28
Ubuntu 17.04安装CUDA9.0 Cudnn7 Opencv3.3 Caffe安装
2017-11-12
vgg_generated_64.i.rar
2017-11-01
opencv_contrib-3.2.0.tar.gz
2017-10-23
apache-log4j-2.9.0-bin
2017-09-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人