
C++
文章平均质量分 74
csdn菜逼
多学多写,多思考
展开
-
VS2015编译OpenDDS
OpenDDS编译原创 2022-07-18 12:20:11 · 1289 阅读 · 3 评论 -
opengl使用着色器简单示例
今又研究了下opengl着色器,直接用简单示例代码~#include "../glew/GL/glew.h"#include "../glfw/GLFW/glfw3.h"#include <stdio.h>// 按键-回调函数void key_callback(GLFWwindow* window, int key, int scancode, int action,...原创 2020-03-29 13:12:09 · 603 阅读 · 0 评论 -
windows进程间通讯-邮路
邮路是由邮路服务进程创建。当邮路服务进程创建了一个邮路后,便返回该邮路句柄。当某个进程需要从该邮路中读取消息时,它必须提供该句柄。只有创建该邮路的进程,或以某种机制(比如继承)获得该邮路句柄的进程能够从邮路中读取消息。与管道不同,所有的邮路都是从属于创建它的本地进程的,你无法创建一个远程的邮路。邮路的客户进程具有向邮路写入消息的权限。任何进程只要获得了邮路的名字,就可以往里面写入消息,新的消息将放...原创 2018-08-18 14:14:24 · 267 阅读 · 0 评论 -
windows进程间通讯-管道
管道是一种用于在进程间共享数据的机制,其实质是一段共享内存。Windows系统为这段共享的内存设计采用数据流I/0的方式来访问。由一个进程读、另一个进程写,类似于一个管道两端,因此这种进程间的通信方式称作“管道”。 管道分为匿名管道和命名管道。1.匿名管道只能在父子进程间进行通信,不能在网络间通信,而且数据传输是单向的,只能一端写,另一端读。2.命令管道可以在任意进程间通信,通信是双向的,任...原创 2018-08-18 14:22:58 · 887 阅读 · 0 评论 -
windows进程间通讯概括
进程间通讯主要包括以下几种,其中windows下常用的就是共享内存、管道、socket等等。1.文件映射 文件映射(Memory-Mapped Files)能使进程把文件内容当作进程地址区间一块内存那样来对待。因此,进程不必使用文件I/O操作,只需简单的指针操作就可读取和修改文件的内容。 Win32 API允许多个进程访问同一文件映射对象,各个进程在它自己的地址空间里接收内存的指针。通...原创 2018-08-18 14:29:05 · 612 阅读 · 0 评论 -
C++多继承
1.什么是多继承一个类有多个基类,那么这种继承关系就叫做多继承。比如有两个类,服务员类Waiter,歌手类Singer,我们有一个类既是服务员,又是歌手,那么我们可以定义类的多继承关系如下:class Waiter{};class Singer{};class SingerWaiter:public Waiter,public Singer{};2.使用多继承会带来哪些...转载 2018-12-02 09:46:17 · 309 阅读 · 0 评论 -
C++11 多线程编程使用实例
最新研究下C++11中线程的知识,基本内容如下:1、C++11中创建线程的几种方式在C11中,我们可以通过创建std::thread类的对象来创建额外的线程。每个thread对象可以跟具体的某个线程关联,从而达到多线程并发的目的。 必须 #include 那么,std::thread 对象如何执行呢?很简单,给它一个回调入口(callback),当线程启动时就会自动执行callbac...转载 2018-12-16 19:58:07 · 1409 阅读 · 0 评论 -
openssl编译
最近使用curl用到了openssl,下面是编译openssl的主要过程1.下载安装ActivePerl2.使用VS工具,进入到openssl的解压目录3.perl Configure debug-VC-WIN32 no-asm --prefix=E:\FG\Build\openssl\openssl-master\myInstall4.nmake5.nmake test6.nmak...原创 2019-01-19 12:26:48 · 2828 阅读 · 0 评论 -
curl下载osm数据
最近尝试使用curl下载osm数据,下面是test代码#include "curl/curl.h"size_t write_data(void *ptr, size_t size, size_t nmemb, FILE *stream){ size_t written = fwrite(ptr, size, nmemb, stream); return written;}#d...原创 2019-01-19 14:42:16 · 247 阅读 · 0 评论 -
windows UDP简单实例
直接上例子代码client:#include <stdio.h>#include <winsock2.h>#pragma comment(lib,"ws2_32.lib")#define BUF_SIZE 1024#define PORT_ 9411int main(void){ WSADATA wsd; int iRet = 0; //...原创 2018-08-12 18:23:41 · 5845 阅读 · 2 评论 -
windows下UDP组播
最近研究下UDP组播,首先上网看看各种组播的含义,以下是总结的: 多播,也称为“组播”,将网络中同一业务类型主机进行了逻辑上的分组,进行数据收发的时候其数据仅仅在同一分组中进行,其他的主机没有加入此分组不能收发对应的数据。 在广域网上广播的时候,其中的交换机和路由器只向需要获取数据的主机复制并转发数据。主机可以向路由器请求加入或退出某个组,网络中的路由器和交换机有选择地复制并传...原创 2018-08-12 18:19:57 · 16457 阅读 · 8 评论 -
timeSetEvent函数
该的timeSetEvent功能启动指定的定时器事件。多媒体计时器在其自己的线程中运行。事件激活后,它会调用指定的回调函数,或设置或脉冲指定的事件对象。句法C ++MMRESULT timeSetEvent( UINT uDelay, UINT uResolution, LPTIMECALLBACK lpTimeProc, DWORD_PTR dwUser, UIN...原创 2018-04-03 11:21:24 · 6284 阅读 · 0 评论 -
_memicmp、_memicmp_l
用法:#include <string.h> 功能:比较内存区域buf1和buf2的前count个字节但不区分字母的大小写。 说明:memicmp同memcmp的唯一区别是memicmp不区分大小写字母。 当buf1<buf2时,返回值<0 当buf1=buf2时,返回值=0 当buf1>buf2时,返回值>0...原创 2018-04-03 15:32:01 · 680 阅读 · 0 评论 -
windows下lib 和 dll 的区别、生成以和使用详解
转至:http://www.cnblogs.com/TenosDoIt/p/3203137.html首先介绍一下静态库(静态链接库)、动态库(动态链接库)的概念,首先两者都是代码共享的方式。静态库:在链接步骤中,连接器将从库文件取得所需的代码,复制到生成的可执行文件中,这种库称为静态库,其特点是可执行文件中包含了库代码的一份完整拷贝;缺点就是被多次使用就会有多份冗余拷贝。即静态库中的指令都...转载 2018-05-26 14:11:43 · 7044 阅读 · 0 评论 -
dll编译警告 warning C4273处理方法
转至:https://blog.youkuaiyun.com/bendangth/article/details/47356767warning C4273dll链接不一致 方法1: 选择项目->属性->预处理器->预处理定义, 增加:HYCOMMONWINAPI_EXPORTS方法2:就是在#ifdef HYCOMMONWINAPI_EXPORTS#define HYCOMMONWINAP...转载 2018-05-26 14:39:38 · 3125 阅读 · 0 评论 -
使用def文件从dll导出
转至:https://www.2cto.com/kf/201303/197199.html模块定义 (.def) 文件是包含一个或多个描述 DLL 各种属性的 Module 语句的文本文件。如果不使用 __declspec(dllexport) 关键字导出 DLL 的函数,则 DLL 需要 .def 文件。.def 文件必须至少包含下列模块定义语句:文件中的第一个语句必须是 LIBRARY 语句。...转载 2018-05-26 15:44:32 · 1368 阅读 · 0 评论 -
C++使用原始套接字抓包
最近在研究使用原始套接字抓包,在网上找各种资料,下面是自己整理的测试代码编程实现主要有以下几个步骤: 1. 初始化WINSOCK库; 2. 创建SOCKET句柄; 3. 绑定SOCKET句柄到一个本地地址; 4. 设置该SOCKET为接收所有数据的模式; 5. 接收数据包; 6. 关闭SOCKET句柄,清理WINSOCK库;#include <stdio....原创 2018-05-27 21:12:46 · 7013 阅读 · 5 评论 -
windows使用共享内存实例
今天复习一下windows下进程间通讯的方法:共享内存,以下是简单实例客户端:#include <windows.h>#include <stdio.h>#pragma pack(1)struct ShareData{ int iType; int iSize; char strData[4096];};#pragma pack()int main(...原创 2018-06-16 12:34:32 · 2637 阅读 · 3 评论 -
windows下libevent安装并使用
libevent是一个常用的网络库,下面就看看在windows下面编译测试的过程吧。一 环境系统:win8.1编译器:VS2013官方下载地址:http://libevent.org/版本:2.0.22-stable二 编译静态库1 解压把上面下载到libevent-2.0.22-stable.tar.gz解压,得到libevent-2.0.22-stable文件夹2 添加宏定义在libevent...转载 2018-06-02 16:05:35 · 7694 阅读 · 1 评论 -
WSARecvFrom
int WSARecvFrom ( SOCKET s , LPWSABUF lpBuffers , DWORD dwBufferCount , LPDWORD lpNumberOfBytesRecvd , LPDWORD lpFlags , struct sockaddr FAR * lpFrom , LPINT lpFromlen , LPWSAOVERLAPPED lpOverlapped ,...转载 2018-04-03 11:03:07 · 1002 阅读 · 0 评论