自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

turboyuan的博客

公司什么时候上市

  • 博客(50)
  • 收藏
  • 关注

原创 组件重构

知识点没有顺序:按照A4纸整理1、 关于DaemonConfig.ini可以设置多播的数值,如果希望多台设备共同接收数据火或者发送数据,则将多播的IP地址和端口号设置相同如果接收到的主题混乱,在使用上面方式之后,仍然没有用,可以考虑改变字符编码格式。2、 对于全局变量的使用如果一个变量只是在本类中使用,将这个变量定义为成员变量;对于static类型的回调函数,在这个函数里使用成员变...

2019-11-15 10:22:18 356

原创 关于组播

Linux 网络编程 –多播(组播)编程单播 && 广播:单播用于两个主机之间的端对端的通信,广播用于一个主机对整个局域网上所有主机上的数字通信。单播和广播是两个极端,要么对一个主机进行通信,要么对整个局域网上的主机进行通信。实际情况下,经常需要对一组特定的主机进行通信,而不是整个局域网中的所有主机这就是多播的用途。多播:多播,也称为“组播”,将局域网中同一业务类型主机...

2019-11-15 10:11:20 481

原创 关于栈数据结构

#include#includeusing namespace std;//栈数据结构的使用/*栈的基本用法:1、push():向栈内压入一个成员2、pop():从栈顶弹出一个成员3、empty():如果栈为空返回true;否则返回false;4、top():返回栈顶,但是不删除成员5、size():返回栈内元素的大小*/int main(){stack stk;//...

2019-11-15 10:10:00 226

原创 关于席位代理的问题

1、 为什么两个席位代理不能连接成功?PC机防火墙没有关闭两台设备配置文件不相同(注意多播的地址以及IP地址)配置文件格式的问题(utf-8 没有BOM 至少格式要是相同的)可以测试两台设备ip地址是否ping成功,这是首要前提Ip地址ping成功后,在考虑以上的问题Ip地址ping成功,看网络适配器 设备状态(开启/关闭)在linux中可以还要考虑桥接的问题(桥接模式)这是有问...

2019-11-15 10:08:24 716

原创 关于套接字类型与协议设置

1、 协议协议就是为了完成数据交换定好的约定2、 创建套接字socket(int domain,int type,int protocol);domain:套接字中使用的协议族 PF_INET IPv4互联网协议族type:套接字数据传输类型信息 SOCK_STREAM SOCK_DGRAMprotocol:计算机间通信中使用的协议信息 ...

2019-11-15 10:07:12 496

原创 关于进程间通信的特征

进程间通信的特征:同步和异步通信:每个消息目的地与一个队列相关。发送进程将消息添加到远程队列中,接收进程从本地队列中移除消息。发送进程和接收进程之间的通信可以是同步的也可以是异步的。在同步(syn)形式的通信中,发送进程与接收进程在每个消息上同步。这时,send和receive都是阻塞操作。每次发出一个send操作后,进程(线程)将一直阻塞,直到发送了相应的receive操作为止。每次...

2019-11-15 10:05:52 187

原创 关于WindRriver

WindRiver是一个用于嵌入式开发的软件。0、 安装windRiver需要注意的地方:选择永久激活,密钥就是安装包中的install.txt加载选择这个目录即可。安装过后,将你安装包中的vlxollzs文件夹中的【zwrsLicense.lic】复制替换掉你当才安装的文件中license中的【zwrsLicense.lic】[总之,就是将许可证换掉]1、 如何使用WindRiver...

2019-11-15 10:04:22 1580

原创 关于ubuntu codeBlocks项目移植

2018/7/11目标:将window中能够运行的代码,放到linux(ubuntu)中运行。1、在Ubuntu中安装了codeBlocks,这是一个类似于vs2013的软件。还有一个codeLite,需要注意codeLite与ARM系统是冲突的。(至于codeblocks是否与ARM冲突,没有试过,不知道)安装过程需要注意的点:1)安装Ubuntu的时候,最好在有网的情况下,这样可以避免...

2019-11-15 10:03:26 303

原创 关于TCP和UDP

TCP和UDP以一种对应有用的形式提供了互联网的通信能力。端口的使用:作为传输层的协议,TCP和UDP必须提供进程间的通信。这通过端口来完成。端口号用于将消息寻址到指定的计算机上的进程,它仅在此计算机上有效。端口号是一个16位整数。一旦一个IP数据包被发送到目的主机,TCP或UDP层的软件就通过该主机的特定端口将它分派到一个进程中。TCP的特点:它通过基于流的编程抽象,提供了任意长度...

2019-11-15 10:02:19 246

原创 关于sockcet通信

setsockopt()函数功能介绍功能描述:获取或者设置与某个套接字关联的选项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。当操作套接字选项时,选项位于的层和名称必须给出。为了操作套接字层的选项,应该将层的值指定为SOL_SOCKET。为了操作其它层的选项,控制选项的合适协议号必须给出。例如,为了表示一个选项由TCP协议解析,层应该设定为协议号TCP;用法:#inclu...

2019-11-15 09:34:05 286

原创 关于list项目文档总结--QT

2018/7/61、一共有两个界面,PageTest、SeaPage;SeaPage里有SimulationBoxlist、SimulationBoxClass、SimulationBoxItem2、关于信号槽的问题a) 信号槽用于两个对象之间的通信b) 一个信号可以关联到多个槽,当这个信号被发射时,这些槽就会一个接一个的执行,但是执行的顺序是随机的c) 多个信号也可以关联到同一个槽中;...

2019-11-15 09:30:06 259

原创 关于Linux中eclipse && RedHat

在eclipse中创建C++项目?省略介绍属性配置生成动态链接库(Shared Library 后缀:so)如果出现fPIC的问题,在g++后面加-fPIC添加编译的头文件添加库所在的路径添加库问题1:C++程序中出现undefined reference to …使用库的时候首先要明确库(或者头文件)使用什么编写的如果是C++编写的,那么在MFC中可以直接使用如果是C编写...

2019-11-13 09:35:36 166

原创 关于fd_set

fd_set 函数讲解#include<winsock.h>函数原型:int select(int nfds,fd_set* readfds,fd_set* writefds.fd_set* exceptfds,const struct timeval* timeout);参数说明:ndfs: 本参数忽略,仅起到兼容的作用readfds: (...

2019-11-13 09:34:42 229

原创 关于char数组 字符串等相关知识

#include <stdlib.h>#include <stdio.h>#include using namespace std;//对于输出的问题int main(){char* buffer = new char[20];if (NULL == buffer){printf(“allocate memory failed\n”);}int i ...

2019-11-13 09:33:58 347

原创 关于BAT脚本

1. BAT脚本编写 开启进程 关闭进程 编辑、保存关闭文件的脚本taskkill -f -im AdminServer.exetaskkill -f -im NodeProxyConsole.exetaskkill -f -im NodeAgent.exetaskkill -f -im TestCP1.exetaskkill -f -im TestCP2.exetaskkil...

2019-11-13 09:33:08 174

原创 Linux 基础问题

1、 2019/3/25关于sprintf_s在windows中有自带的sprintf_s的函数在linux中只有sprintf,没有sprintf_s所以程序中通常会用到#define sprint_s() sprint() //需要 ##VGA 两个#不能忘记2、 在linux中使用list类型的数据结构#includeusing namespace std; /...

2019-11-13 09:31:47 395

原创 类和动态内存分配

Part 1:静态类成员特点:无论创建了多少对象,程序都只创建一个静态类变量副本。也就是说,类的所有对象共享一个静态成员。静态数据成员在类声明中声明,在包含类方法的文件中初始化。初始化时使用作用域运算符来指出静态成员所属的类。但如果静态成员是const整数类型或枚举型,则可以在类声明中初始化。Part 2:在构造函数中使用new时注意事项1、 new && delete...

2019-11-13 09:30:59 194

原创 关于字符串 && string类

1、 字符串字符串是存储在内存的连续字节中的一系列字符。存储在连续字节中的一系列字符意味着可以将字符串存储在char数组中,其中每个字符都位于自己的数组元素中。什么时候char数组是string类型?char dog[8]={‘b’,’e’,’a’,’u’,’x’,’’,’I’,’I’}; //not a stringchar cat[8]={‘b’,’e’,’a’,’u’,’x’...

2019-11-13 09:30:01 471

原创 关于指针--基础

#include #include <stdio.h>using namespace std;//指针 内存int main(){//一、声明和初始化指针int* ptr; //int ptr; int * ptr; 在C++中,int是一种复合类型,是指向int的指针//ptr是指针(地址),而ptr是int,而不是指针//初始化指针,在这种情况下,被初始化的是指...

2019-11-13 09:29:13 132

原创 关于栈 && 堆内存分配

Part1:程序的内存分配1、 栈区【函数的参数、局部变量】由编译器自动分配和释放,存放函数的参数、局部变量等内存分配是来连续分配的,当申请变量时,编译器自动在其尾部分配一块内存2、 堆区 [malloc free / new delete]由程序员分配和释放[malloc free / new delete](需要指明所需内存大小),如果忘记或是没有释放内存,程序结束时可能由...

2019-11-13 09:28:39 848

原创 关于引用参数输出 && 内联函数 && 二元组比较 && 引用

内联函数inline常规函数调用是使程序跳到另一个地址(函数地址),并在函数返回时结束。内联函数:编译器将使用相应的函数代码替换函数调用。对于内联代码,程序无需跳到另一个位置处执行代码,再跳回来。但是代价是需要占用更多的内存。程序员请求将函数作为内联函数时,编译器并不一定会满足这种要求。它可能认为该函数过大或者注意到函数调用了自己(内联函数不能递归)。引用变量:1、 引用是已定义的变量...

2019-11-13 09:27:52 218

原创 关于异常和其他

关于异常的几种处理方法:1、 调用abort()Abort()函数的原型位于头文件cstdlib.h(或者stdlib.h)中,其典型实现是向标准错误流(即cerr使用的错流),发送abnormal program termination(程序异常终止),然后终止程序。它还返回一个随实现而异的值。abort()是否刷新文件缓冲区(用于存储读写到文件中的数据的内存区域)取决于实现但是,也可以...

2019-11-13 09:26:38 614

原创 关于绝对路径&&相对路径

相对路径:电脑资源管理器显示目录:E:\test\file\data当前路径:E:\test\file1、 相对路径1.1向上一级目录指向 用正斜杠’/’./ 表示当前路径,相当于E:\test\file…/表示当前路径的上一级路径,相当于E:\test…/…/表示当前路径上上一级路径,相当于E:1.2向下一级目录指向./data 表示当前路径下一级路径 相当于E:\test\f...

2019-11-09 16:24:02 383

原创 关于进程间通信的特征

进程间通信的特征:同步和异步通信:每个消息目的地与一个队列相关。发送进程将消息添加到远程队列中,接收进程从本地队列中移除消息。发送进程和接收进程之间的通信可以是同步的也可以是异步的。在同步(syn)形式的通信中,发送进程与接收进程在每个消息上同步。这时,send和receive都是阻塞操作。每次发出一个send操作后,进程(线程)将一直阻塞,直到发送了相应的receive操作为止。每次...

2019-11-09 16:23:22 314

原创 关于继承和动态内存分配

/*总结:当基类和派生类都采用动态内存分配时,派生类的析构函数、复制构造函数、赋值运算符都必须使用相应的基类方法来处理基类元素。1、对于析构函数,这是自动完成的。2、对于复制构造函数,这是通过在初始化成员列表中调用基类的复制构造函数来完成的;如果不这样做,将自动调用基类的默认构造函数3、对于赋值运算符,这是通过使用作用域解析运算符显示地调用基类的赋值运算符来完成的。*/#incl...

2019-11-09 16:22:30 262

原创 关于函数指针&指针函数

/*1、简单的函数指针的用法形式1:返回类型 (*函数名)(参数表)第一行:定义一个指针变量pFunc,它是一个指向某种函数的指针第二行:定义了一个函数gFunc,该函数正好是一个以int为参数,返回为char的函数从指针的层次上理解函数——函数的函数名实际上就是一个指针,函数名指向该函数的代码在内存中的首地址main函数里:第一句将gFunc的地址赋值给pFunc;第二句*pFun...

2019-11-09 16:21:24 285

原创 关于哈希表

代码不是很正确,有的函数还没有测试!!!//哈希表#include #include <stdio.h>using namespace std;#define HASHMAXSIZE 11typedef int KeyType;typedef int ValType;typedef size_t (*HashFunc)(KeyType key); //函数指针,控制元素...

2019-11-09 16:20:36 378

原创 关于分布式系统

什么是分布式系统?分布式系统是由一组通过网络进行通信,为了完成共同的任务而协调工作的计算机节点组成的系统。其目的是利用更多的机器,处理更多的数据。分布式系统要解决的问题本身就是和单机系统一样的,而由于分布式系统多节点,通过网络通信的拓扑结构,会引入很多单机系统没有的问题,为了解决这些问题又会引入更多的机制、协议,带来更多的问题。分布式系统分为分布式计算(computation)和分布式存储...

2019-11-09 16:18:22 573

原创 关于对象和类

1、 C++中的类类是一种将抽象转换为用户定义类型的C++工具。1.1什么是接口?接口让程序员能够编写与类对象交互的代码,从而让程序能够使用类对象。例如,要计算string对象中包含多少个字符,无需打开对象而使用string类提供的size()方法。方法size()是用户和string对象之间的公共接口的组成部分。通常,方法getline()是istream类的公共接口的组成部分,使用c...

2019-11-09 16:17:45 213

原创 关于读取exe文件&写入exe文件&报文的使用

#include std::ifstream input;input.open(“selfInput.txt”); //打开文件,如果没有该文件就在创建项目的文件中新建input >> ipaddr >> index >> pid; //将这些ipaddr等输入到文件中cout << ipaddr << endl <&l...

2019-11-09 16:16:50 798

原创 关于动态链接库dll

s2013中,多行注释ctrl +k ctrl+c取消注释ctrl+k ctrl +u6.5 先是编写了一个动态链接库,编写一个C++项目,在这个项目中使用这个动态链接库1、编写动态链接库2、编写项目加载这个dll,分为三个部分C/C++常规,附加包含目录,找到你编写的那个动态链接库cpp的位置,可以是相对/绝对路径链接器,常规,附加库目录输入,附加依赖项6....

2019-11-09 16:15:49 253

原创 关于参数输入 && 输出

int SetNum(int &num) //进行写操作,参数传出{num = qiyuan;}int SetNum(const int &num) //进行读操作,参数传入{ qiyuan = num;}int SetNum(int *num) //进行写操作,参数传出{ *num = 1;}int SetNum(int *num) ...

2019-11-09 16:15:02 284

原创 关于编译错误整理

包含头文件顺序:系统头文件第三方头文件【你使用了别人的头文件】项目中创建的的头文件Part1:error C4996 use _CRT_SECURE_NO_WARNINGS处理方法:预处理器定义属性-》c+±》预处理器-》预处理器定义-》编辑-》加入你所需要的预处理的内容Part2:error C4430;缺少类型说明符[1] 原因:如果存在两个类的头文件apple.h和bo...

2019-11-07 18:06:57 285

原创 关于Windows内存体系结构

一、 进程的虚拟地址空间每个进程都有自己的虚拟地址空间。对于32位进程来说,这个地址空间的大小为4GB。对于64位进程来说,这个地址空间的大小为16EB。因为每个进程都有自己专属的地址空间,当进程中的各线程运行时,它们只能访问属于该进程的内存。线程既看不到属于其他的进程的内存,也无法访问它们。虽然应用程序有这么大的地址空间可用,但是记住这只是虚拟地址空间——不是物理存储器。为了能够正常读/写数...

2019-11-07 18:06:14 202

原创 关于typedef的用法&常量指针&指针常量

typedef的四种用法:用途1、定义一种类型的别名,而不只是一种简单的宏替换;可以用作同时声明指针的多个对象。比如:char* pa,pb; //它只声明了一个指向字符变量的指针(char pa;) 以及 一个字符变量(char pb;)typedef char PCHAR;PCHAR pa,pb; //同时声明了两个指向字符变量的指针虽然char *pa,*pb;但是在有很多指针...

2019-11-07 18:04:49 494

原创 关于TCP和UDP

TCP和UDP以一种对应有用的形式提供了互联网的通信能力。端口的使用:作为传输层的协议,TCP和UDP必须提供进程间的通信。这通过端口来完成。端口号用于将消息寻址到指定的计算机上的进程,它仅在此计算机上有效。端口号是一个16位整数。一旦一个IP数据包被发送到目的主机,TCP或UDP层的软件就通过该主机的特定端口将它分派到一个进程中。TCP的特点:它通过基于流的编程抽象,提供了任意长度...

2019-11-07 18:04:01 210

原创 关于sizeof && strlen

#include#include using namespace std;enum MyEnum{a=0,b=1,EVO_MSG_REQUEST_IDENTIFIER_ALLOCATE = 3,EVO_MSG_REPLY_IDENTIFIER_ALLOCATE = 4,EVO_MSG_REQUEST_GRAPH_LIBRARY_QUERY = 5,EVO_MSG_REPLY_G...

2019-11-07 18:03:14 165

原创 关于namespace

1、 新的名称空间特性通过定义一种新的声明区域来创建命名的名称空间。名称空间可以是全局的,也可以位于另一个名称空间中,但不能位于代码块中,任何名称空间中的名称都不会与其他名称空间中的名称发生冲突。名称空间是开放的(open),即可以把名称加入到已有的名称空间中。访问给定名称空间中的名称,通过作用域运算符:: 使用名称空间来限定该名称Jack::Pail =12.34;2、 using...

2019-11-07 18:02:09 179

原创 关于map && set && vector的使用

//关于map的用法map是STL的一个容器,它提供一对一的hash(哈希表)第一个参数为key,每一个关键字在map中只能出现一次第二个参数为该关键字的值map以模板方式实现,可以存储任意类型的变量,包括使用者自定义的变量map内部的实现自建一颗红黑树,这棵树具有对数据自动排序的功能。#include #include using namespace std;int main(...

2019-11-07 18:01:27 193

原创 关于Linux中的问题合集

1、 ubuntu中编译报错:undefined reference to “pthread_create”collect2:ld returned 1 exit status就是:编译器在link的时候找不到其中一个使用库的函数。如果差pthread_create的可以发现在pthread.so中,所以需要添加“-lpthread”编译参数,告诉linker在link的时候使用pthrea...

2019-11-07 18:00:44 221

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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