自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

原创 vs各版本离线安装

记一次离线安装vs的过程,防止遗忘(以前离线装过,却忘了)

2024-08-15 23:11:20 272

原创 计算机网络

在物理层服务的基础上,为网络层提供服务。加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。网络层主要负责传输层传递过来的数据是如何在网络当中进行传输的,也就是如何在路由器之间进行跳转。因为电磁波在总线上的传播速度是有限的,因此如果发送站监听到空闲,总线却不一定是空闲的。物理层负责比特流的传输,数据链路层的数据传到物理层,由物理层的链路来进行传输。如果要发数据,首先监听信道,如果空闲立即发,否则监听至信道空闲。

2023-03-24 11:25:31 379 1

原创 C++ Keywords

explicit用来修饰一个类的构造函数如上所示,该类当中有一个构造函数,且构造函数当中只有一个参数。第一、二行实例化方法以及第三、四行赋值的方法就是隐式转换。在C++中, 如果的构造函数只有一个参数时,那么在编译的时候就会有一个缺省的转换操作:将该构造函数对应数据类型的数据转换为该类对象。但是,如果加上explicit关键字之后,就只有最后一行的代码不会报错了。因为explicit会禁止隐式转换。一般上述情况只会发生在只有一个参数的构造函数当中。

2023-02-22 10:41:11 415 1

原创 Effective C++笔记

C++是一个多重范型编程语言,包括过程、面向对象、函数、泛型、元编程将C++视为一个由相关语言(次语言)组成的联邦,而不是单一的一个语言。因此,在C++代码当中,是可以存在不同的编程范式的。综上,C++不是一个带有一组守则的一体语言,而是4个次语言组成的联邦语言。C++的高效编程守则视状况而变化,这取决于你使用的是哪个次语言。

2023-01-31 16:06:29 381

原创 SSH免密登陆(适用于VSCode远程开发)

完成后,进入.ssh文件夹,创建一个文件名为authorized_keys,并将本地的pub公钥当中的内容复制到该文件当中。随后,在远端(Ubuntu)输入同样的命令,并生成密钥。其中id_rsa是私钥,id_rsa.pub是公钥。三次回车,直接默认即可,生成的密钥在第三行有显示。首先,本地Windows端,打开命令行并输入。至此,ssh可直接免密,无需重启ssh服务。

2022-12-20 12:03:15 356

原创 HLA pRTI开发

HLA pRTI开发FederateAmbassador and the RTIambassador有两个主要的 Java 接口来处理联邦的开发,FederateAmbassador 和 RTIambassador。FederateAmbassador 接口是 RTI 与联邦进行通信的接口。RTI 通过调用 FederateAmbassador 类中的方法向联邦发送消息(调用这样的方法通常被称为调用回调)。当您编写自己的联邦时,需要实现所有可用回调方法的类来实现 FederateAmbassado

2022-02-27 19:13:35 1138 1

原创 HLA程序开发

HLA程序开发使用pRTI所给starterkit实例这个燃油经济联邦用于评估不同制造商的汽车使用有限的燃油可以行驶多远,每个汽车制造商都提供一个仿真器来模拟选定的模型,上述就是联邦的示意图。A品牌模拟他们的319和440d模型,B品牌模拟他们的4-8和MountainCruiser模型。以后可能会有更多的汽车模拟器,所以设计不会被锁定在这些特定的汽车上。有一个称为 Master 的管理联邦成员,操作员可以从中设置场景并开始和停止模拟。还将有一个名为 MapViewer 的联邦成员,它显示带有汽车

2022-02-26 15:57:27 1309

原创 HLA仿真程序设计基础

HLA仿真程序设计基础HLA仿真程序设计即是在联邦设计的基础上通过合理地使用RTI服务来达成仿真联邦的目的。要理解基于HLA的仿真程序设计,首先必须理解联邦执行的生命周期,同时还要掌握联邦执行的整个生命周期中联邦执行的各种状态以及联邦成员、联邦执行、RTI这三者间的关系。联邦执行的生命周期创建联邦执行创建联邦执行时联邦执行生命周期的第一个阶段,联邦执行实际上是RTI根据FED文件的内容及有关的联邦细节数据,为联邦成员间的交互而创建的一个虚拟世界。它是一个动态的、有生存期的概念,联邦执行的管理和维护

2022-02-25 16:32:00 6715

原创 HLA 联邦开发和执行过程模型(FEDEP)

联邦开发和执行过程模型(FEDEP)美国国防部建模与仿真办公室(DMSO)提出了开发分布交互仿真系统的软件工程方法,即联邦开发和执行过程模型FEDEP(Federation Development and Execute Process Model)。它是指导HLA分布仿真系统设计开发的基本方法。引言从高层来看,HLA开发步骤可以抽象为以下几个必须遵循的、最基本的步骤:联邦发起人(用户)和联邦开发人员必须确定联邦开发的目标,并确定为达到这些目标必须完成的工作。确定仿真应用的边界和范围,并描述仿真

2022-02-25 14:58:36 891 2

原创 HLA RTI(Run-time Infrastructure)

RTI(Run-time Infrastructure)概述主要作用具体实现了HLA接口规范。为了实现联邦内部各个联邦成员之间进行高效的信息交换,HLA接口规范用文字定义了各种标准服务和接口,而RTI则用程序设计语言将这些标准的服务和接口转成了标准的RTI API函数,使基于HLA的仿真开发成为可能。它为仿真应用提供了仿真运行管理功能,比如仿真过程的开始、暂停、恢复、时间同步、仿真时钟推进等。提供了底层通信传输服务,屏蔽了网络通信程序实现的复杂性,开发人员可以很容易地实现数据的发送和接收,从而降

2022-02-25 14:38:18 4277

原创 HLA对象模型模板

HLA对象模型模板HLA采用对象模型(Object Model)来描述联邦及联邦成员。该对象模型描述了联邦在运行过程中需要交换的各种数据以及相关信息。HLA规定必须用一种统一的表格——对象模型模板(OMT,Object Model Template)来规范对象模型的描述。概述HLA OMT是一种标准的结构框架,是描述HLA对象模型的关键部件。HLA定义了两类对象模型,一类是描述仿真联邦的联邦对象模型(FOM);另一类是描述联邦成员的成员对象模型(Simulation Object Model,SO

2022-02-24 20:36:07 1126

原创 HLA接口规范(六大服务)

六大服务联邦管理主要内容联邦管理是指对一个联邦执行的创建、动态控制、修改和删除等过程。联邦执行是指在联邦(仿真系统)运行过程当中,RTI根据联邦成员的请求,用一个指定的FOM及相关的联邦细节数据,为实现联邦成员之间的互操作而创建的一个虚拟世界。它实际上是一个活动的联邦,因此它是一个和联邦相对应的,具有一定生命周期的动态概念。(个人理解:如同程序和进程的关系)RTI和其他一些支持软件构成了一个综合的仿真环境。在这个环境内可以运行各种联邦。联邦管理就是为了在这个仿真环境当中动态地创建、修改和删除一个联

2022-02-20 16:30:48 2067

原创 HLA(high level architecture) 高层体系结构

HLA(high level architecture) 高层体系结构简介HLA 是分布交互仿真的高层体系结构,它不考虑如何由对象构建成员,而是在假设已有成员的情况下考虑如何构建联邦。HLA 主要考虑在联邦成员的基础上如何进行联邦集成,即如何设计联邦成员间的交互以达到仿真的目的。HLA的基本思想就是采用面向对象的方法来设计、开发和实现仿真系统的对象模型,以获得仿真联邦的高层次的互操作和重用。总之,HLA是用来实现分布式仿真的一项标准。这个标准规定了这个系统应该怎么实现。RTI是HLA中的一部分,也是具

2022-02-20 10:34:19 5377

原创 C++ Prime Plus学习笔记:第九章 内存模型和名称空间

第九章 内存模型和名称空间CPP可以选择数据保留在内存中的时间长度以及程序的那一部分可以访问数据(作用域和链接)等。可以使用new来动态地分配内存,而定位new运算符提供了这种技术的一种变种。CPP名称空间是另一种控制访问权的方式。通常,大型程序都由多个源代码文件组成,这些文件可能共享一些数据。这样的程序涉及到程序文件的单独编译。和C语言一样,CPP也允许程序员将组件函数放在独立的文件中。第1章介绍过, 可以单独编译这些文件, 然后将它们链接成可执行的程序。(通常,C++编译器既编译程序, 也管理链接器

2021-12-07 09:55:34 354

原创 C++ Prime Plus学习笔记:第八章 函数探幽

第八章 函数探幽8.1. C++内联函数内联函数是CPP为了提高程序运行速度所做出的一项改进。常规函数和内联函数之间的主要区别不在于编写方式,而在于CPP编译器如何将他们组合到程序当中。什么意思呢,就是对程序员除了关键字以外,没有任何编写代码方面的区别,它是让编译器来识别的,不同函数编译器处理的方式不同。内联函数的编译代码与其他程序代码“内联”起来了。也就是说,编译器将使用相应的函数代码替换函数调用。对于内联代码,程序无需跳到另一个位置来执行代码(详情见计算机组成原理)。因此,内联函数的运行速度比常规

2021-11-19 09:20:08 173

原创 C++ Prime Plus学习笔记:第七章 函数-C++的编程模块

第七章 函数-C++的编程模块7.1. 复习函数的基本知识提供函数定义提供函数原型调用函数#include <iostream>using namespace std;void simple();int main(){ simple(); return 0;}void simple(){ cout << "hello world" << endl;}函数是如何来进行返回值的呢?函数通过将返回值复制到指定的CPU寄存器

2021-11-07 15:29:42 564

原创 C++ Prime Plus学习笔记:第六章 分支语句和逻辑运算符

第六章 分支语句和逻辑运算符6.1. if语句if(test-condition) statement;if(test-condition) statement1;else statement2;6.2. 逻辑表达式6.2.1. 逻辑OR运算符:||if(test-condition1 || test-condition2) statement;有一个为真,那么表达式就会为真。如果左边的为真,那么就不会去判定右边的表达式。6.2.2. 逻辑AND运算符

2021-11-02 10:55:03 119

原创 UE4.26 水插件参数介绍

water个人理解,不全面,欢迎补充没有水波纹在Water内容当中搜索M_Fluid_Sim_01材质参数Selected Points 选择样条点,就是对地形、湖泊的形状进行设置Water 水Islands 水体当中的岛屿元素,通过添加“水体岛屿”来添加元素。Terrain​ Curve Settings​ Channel Depth 设置水深Wave attenuation Water Depth 波浪开始衰减时候的水的深度Max Wave Height Offset 添加到自

2021-11-01 21:50:25 1382

原创 UE4.26 水插件学习笔记

Diving into the Depths因为项目需要,使用了UE4.26自带的水插件,通过观看官方视频进行学习并写下学习笔记,特此分享。视频链接:https://www.bilibili.com/video/BV11Q4y197RnIntro and Basics如果创建的海洋与地形的衔接过于生硬,可以将falloff setting中的falloff mode从angle改成width。在河流中可以通过water当中的depth 深度river width 宽度velocity 流速

2021-10-31 19:27:12 3971 3

原创 C++ Prime Plus学习笔记:第五章 循环和关系表达式

第五章 循环和关系表达式5.1. for循环for(initialization; test-expression; updata-expression){ body}设置初始值执行测试执行循环更新用于测试的值continue 跳过本次循环break 结束所有循环5.1.5. ++ –前缀和后缀的效果是一样的,但是作用时间不同int a = 20;int b = 20;cout << "a = " << a << " b = "

2021-10-28 10:54:11 127

原创 C++ Prime Plus学习笔记:第四章 复合类型

第四章 复合类型4.1. 数组创建语法:typeName arrayName[arraySize];或typeName arrayName[arraySize] = {e1, e2, … , e(arraySize)};4.1.2. 数组的初始化规则只有在定义数组的时候才能使用初始化,以后就不能使用了,也不能将一个数组赋值给另一个数组。只能用循环一个个地来赋值。如果只对数组的一部分进行初始化,编译器将会把其他元素设置为0。所以如果想要将数组中所有元素设置为0,可以直接:long total

2021-10-26 11:25:14 178

原创 C++ Prime Plus学习笔记:第三章 处理数据

第三章 处理数据3.1. 简单变量3.1.1. 变量名命名规则:在名称中只能使用字母字符、数字和下划线(_)。名称的第一个字符不能是数字。区分大小写。不能将C++关键字用作名称。以两个下划线或下划线和大写字母打头的名称被保留给实现(编译器以及其使用的资源)进行使用。以一个下划线开头的名称被保留给实现,用作全局标识符。C++对于名称的长度没有限制,名称中所有的字符都有意义,但有些平台有长度限制。3.1.2. 整型char 1Bshort 2Bint 4Blong 8Blong

2021-10-25 11:23:19 408

原创 C++ Prime Plus学习笔记:第二章 开始学习C++

第二章 开始学习C++2.1. 进入C++C语言输入和输出在C语言当中,一般会引入stdio.h这个头文件,然后使用printf和scanf两个函数来进行输出和输入的操作。但是在C++当中,对C语言进行了很多的改进,所以C++的输入输出就会使用cout和cin来输出输入。2.1.1. main()函数在c++当中,要求main()函数的定义必须是int类型的。因为main()被启动代码调用,而启动代码是由编译器添加到程序中的,是程序和操作系统之间的桥梁。可以使用int和void作为main的函数

2021-10-24 10:19:15 389

原创 TCP连接从建立到释放

TCP连接连接的建立经典的三次握手首先,客户端是主动打开连接,服务端是被动打开连接服务端首先创建传输控制块(TCB),准备接受客户端的连接请求,然后服务端就进入LISTEN状态,等待连接请求并作出响应。客户端也是首先创建传输控制块TCB,创建完成收向服务端发送请求报文段,这时首部的同步位SYN=1,同时选择一个初始序号seq=x。(TCP规定SYN报文段即SYN=1的报文段不能携带数据但是需要消耗一个序号),这时客户端进入SYN-SENT(同步已发送)状态。服务端接收到连接请求报文之后,如果同

2020-06-23 17:52:43 604

原创 反射学习

反射机制+正则表达式反射Java反射机制是指在运行状态下,对于任意一个类(class文件),都能够知道这个类的所有的属性和方法对于任意一个对象,都能够调用它的任意的一个方法和属性通过这种动态地获取信息以及调用对象的方法的功能称为Java语言的反射机制获取字节码对象的方式1.Object类中的getClass()方法Person p1 = new Person();Class cl...

2020-03-02 18:47:13 103

原创 IO流学习

IO流IO流用于处理设备之间的数据传输Java对于数据的操作是通过流的方式Java用于操作流的对象都在IO包中流按操作的数据分为两种:字节流与字符流流按流向分为:输入流和输出流字符流的由来:字节流读取文字字节数据之后,不直接操作,而是先通过指定的编码表,获取对应的文字之后,再对该文字进行操作。IO流常用基类字节流的抽象基类:InputStream,OutputStream字符流...

2020-03-02 17:00:22 176

原创 集合学习

集合What is Collection used for?对象用于封装特有数据,对象需要被存储,如果对象的个数不确定,就需要使用集合来进行存储集合的特点:1.用于存储对象的容器2.集合的长度是可变的3.集合中不可以存储基本数据类型值Collection集合因为内部的数据结构不同,所以存在着多种集合。不断地将集合的共有的功能向上抽取,就形成了集合框架框架的顶层Collectio...

2020-03-02 13:32:43 317

原创 String类及相关知识的学习

String类String类的特点:字符串对象一旦被初始化就不会被改变字符串定义的两种方法:String s = "abc";String s1 = "abc";System.out.println(s == s1);result: trueString s = "abc";//在常量池中创建一个对象String s1 = new String("abc");//在堆内存...

2020-03-01 15:16:57 157

原创 关于Java多线程的学习

多线程介绍What is Thread?在Java程序中,一个类中有一个main函数,这个main函数描述了程序的主要运行步骤。Java程序中,main函数也相当于一个线程,它叫做主线程,如果调用Thread.currentThread().getName()的话,会发现在main函数所运行的线程名字叫main。如果创建其他线程的话,其他线程与主线程是并行执行的。线程的几种状态...

2020-02-29 19:21:20 146

原创 Hadoop集群完全分布式模式搭建

#StartHadoop是用java编写的,所以如果要在服务器上部署hadoop,必须要在服务器上安装好java环境在我的虚拟机中,java的环境:JAVA_HOME=/usr/lib/jdk/jdk1.8.0_191JRE_HOME=${JAVA_HOME}/jreCLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libPATH=${JAVA_HOME...

2019-03-04 21:49:49 255

原创 SSM框架配置文件详解

SSM框架配置文件详解在SSM项目当中,所需要的配置文件总共有以下几个 1.web.xml 2.applicationContext.xml 3.springmvc.xml下面将会依次详细介绍三个配置文件的配置方法以及配置的含义1.web.xmlweb.xml是ssm项目当中最重要的一个配置文件,当服务启动时会首先加载web.xml这个文件,里面包括了...

2018-08-18 15:24:03 17250 3

原创 SSM当中集合从后端传递到前端并遍历的方法

关于SSM当中集合的一些应用如果想从后端向前端发送一个list集合,集合当中的元素类型是个实体类,那么就可以使用foreach方法在前端进行集合的遍历首先在jsp文件的最上方引入一个lib&amp;lt;%@ taglib prefix=&quot;c&quot; uri=&quot;http://java.sun.com/jsp/jstl/core&quot;%&amp;gt;需要使用这个集合的时候,先在外面写一个&amp;lt

2018-08-14 16:25:32 3828

原创 SSM项目当中用户角色权限控制

使用拦截器来进行用户权限控制的思路在SSM项目结构当中,应当将不同角色操作的Controller分布在不同的包当中,方便进行权限控制(也就是springmvc配置文件当中的拦截器配置)尽量将一些对高级权限进行操作的controller写在对应的角色的controller下面,同样是为了方便进行权限控制。对于权限控制拦截器类的编写,由于配置文件是根据url路径进行配置的,所以应当根据各种高级...

2018-08-14 16:23:16 2262

原创 SpringMVC拦截器

SpringMVC拦截器配置拦截器通常用来对用户是否登录进行判断,如果登录,那么就可以访问只能在登陆后才能访问的地址首先是拦截器类的编写(拦截器类应当继承HandlerInterceptorAdapter)public class LoginInterceptor extends HandlerInterceptorAdapter { public boolean preHa...

2018-08-14 16:20:21 125

原创 如何撸出一个SSM项目

如何撸出一个SSM项目本人在学习完SSM的知识之后,结合各种开源软件上面的源码,对于SSM项目有了以下理解,写出来供大家参考,如有不足欢迎指出要耕地,就得有个好农具。首先应当选择自己使用起来得心应手的IDE,只有这样,在做项目的时候就不会被一些奇奇怪怪的IDE使用问题困扰。选择一个适合自己的IDE,这是做项目的第一步开发环境的搭建本说明是基于SSM框架来开发JAVAWEB应用,所以...

2018-08-14 15:51:56 975

空空如也

空空如也

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

TA关注的人

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