自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux终端命令与常用操作技巧

按上键可以检索之前在终端中输入的命令,按Ctrl+A可以快速将光标切换到该行命令的开头,按Ctrl+D可以直接删除当前光标的内容。命令行输入clear可以终端清屏,与直接按Ctrl+L效果一致。head --lines=2 xxx 查看文件的前两行。tail --lines=2 xxx查看文件的最后两行。打印,可直接打印,也可打印环境变量的值等内容。cd - 切换到上一次cd时的目录。file xxx 查看xxx的属性。head xxx 查看文件的开头。tail xxx 查看文件的末尾。

2024-02-27 20:54:30 143

原创 解决vscode中git push/pull需要输入用户名和密码的问题

这个命令是全局设置 Git 的凭证辅助工具为 “store” 模式。这个模式的工作方式是,当你下一次执行需要输入用户名和密码的 Git 操作(如 git push)时,Git 会提示你输入你的用户名和密码,然后它会将这些凭证信息存储在你的本地硬盘上。在这之后,每次你执行需要认证的 Git 操作时,Git 会首先检查这个文件,如果在文件中找到了有效的凭证信息,就会自动使用这些信息进行认证,这样你就不需要再手动输入用户名和密码了。

2024-02-26 16:16:07 893

原创 范围for循环取不到元素地址

在这里,it 是 csm.states 集合元素的拷贝。当你用 &it 获取 it 的地址时,你实际上获取的是这个拷贝元素的地址,而不是集合中元素的地址。当函数结束后,这个拷贝就会被销毁,所以你返回的指针就变成了悬空指针,也就是说,它指向的内存可能已经被重新分配给其他数据了。通过这种方式,it 是一个迭代器,指向 csm.states 中的实际元素。所以,&(*it) 给出的是实际元素的地址,而不是临时拷贝的地址。解决这个问题的一种方式是不使用范围for循环(也就是不使用for : ),而是使用迭代器。

2024-01-22 18:02:35 362 1

原创 动态库与静态库

静态库(.a 或 .lib)是一组编译好的目标文件的集合,它们被打包成一个单独的文件。静态库在编译时被链接到可执行文件中,因此在运行时并不需要额外的库文件。静态库文件在大多数情况下仅具有读取权限。动态库(.so 或 .dll),其本身并不是可执行文件,而是被可执行文件或其他动态库所使用的共享代码库。动态库文件通常具有读取和执行权限,以便可以在运行时被加载和链接到正在运行的程序中。动态库(Dynamic Library)和静态库(Static Library)是软件开发中常用的两种库文件形式。

2023-06-13 16:51:33 927

原创 CMake,CMakeLists.txt,Makefile,make这四者之间的关系

CMake, CMakeLists.txt, Makefile, make四者之间的关系。

2023-05-15 16:39:52 1160

原创 sudo apt-get install、sudo apt install安装包时,提示正在等待缓存锁:无法获得锁 /var/lib/dpkg/lock-frontend。锁正由进程……

sudo apt-get install、sudo apt install安装包出现等待缓存锁:无法获得锁的问题解决。

2023-05-11 21:36:11 2472

原创 OpenDDS安装环境构建+Demo实践(自己动手写一个)

网上的大多数教程,在使用MPC工具直接生成vs2019的.sln文件的时候并没有生成相应的DemoTypeSupport*的IDL类型支持文件,生成解决方案时也会出现错误(一般生成解决方案的时候会给你提示相关错误),究其原因,就是你的IDL文件本身就存在问题。如果在编译IDL文件的时候,提示:错误使用了IDL4的特性,是因为你当前默认使用的是IDL3,只需要在编译的时候使用 --idl-version 4 指定IDL的版本为4即可。导致后续在编译的过程中出现了链接多重定义的问题,排查了好久。

2023-05-09 12:27:16 838 2

原创 OpenDDS与FastDDS的比较

DCPS将发布者和订阅者之间的通信转化为一个基于主题的数据中心,通过使用一组特定的数据类型和传输协议,从而使DDS具有高效的通信、可靠性、实时性和可伸缩性。DCPS提供了一些重要的概念,如主题、数据写入器、数据读取器、数据类型、QoS等。其中,主题定义了发布和订阅的数据类型和语义,数据写入器负责将数据写入DDS网络,数据读取器从DDS网络订阅数据,并按照相应的规则将数据传递给应用程序。OpenDDS是一个开源的分布式数据服务(DDS)实现,它基于OMG的DDS规范,并提供了高效的、可扩展的和可配置的实现。

2023-04-25 16:30:54 2966

原创 IDL,DDS,OpenDDS,dlfcn,CORBA,omniORB,tinyxml2,ACE-TAO概述

TAO(The ACE ORB)是ACE-TAO的ORB组件,基于ACE实现了CORBA的C++语言绑定,提供了一组CORBA的标准API和服务,同时还支持一些扩展和优化,如对异步调用的支持、对SSL/TLS的支持、对GIOP/IIOP协议的扩展等。ACE-TAO主要用于开发分布式应用程序,可以支持多种通信协议和数据格式,如TCP/IP、UDP、HTTP、XML等,同时还提供了一些扩展和优化,如对多线程、多进程、多核等的支持,使得应用程序能够更加高效和可靠地进行通信和交互。

2023-04-19 16:56:00 512

原创 OpenDDS开发环境搭建(Windows 10+Visual Studio 2019)

对OpenDDS在windows下的开发环境搭建做了一个简要的介绍,并提供示例分析,为后续相关的开发工作做一个铺垫。

2023-04-17 20:01:15 1354

原创 Visual Studio项目文件分析

用于理解Visual Studio构建的项目各部分的作用。

2023-04-16 23:03:03 200

原创 Web事件处理与过滤器

Web事件处理与过滤器实验预习内容在Servlet 2.4规范中共定义了三种对象上的6种事件类型和8个事件监听器接口,他们分别是什么?请用表格形式上表示出来。如何配置Servlet监听器程序?<listener> <listener-class> listener.MyServletContextListener </listener-class></listener>简述过滤器的工作原理

2021-05-20 22:40:45 1011 2

原创 JDBC数据库访问与DAO设计模式

JDBC数据库访问与DAO设计模式实验预习内容JDBC常用的类对象与接口有哪些?它们的功能如何?答:Driver接口:通过Class.forName()装载特定厂商提供的数据库驱动程序;DriverManager类:管理驱动程序,通过getConnection()方法建立与数据库的连接。Connection对象:代表与数据库的连接,不同的数据库驱动程序和连接的URL都不相同Statement对象:提供在基层连接上运行SQL语句并访问结果。ResultSet对象:提供对查询结果集的行访问的方法

2021-05-20 22:18:44 1766

原创 会话管理

会话管理实验预习内容什么是会话,一个会话的生产周期从什么时候,到什么时候结束?答:会话(session)是客户与服务器之间的不间断的请求响应序列。当一个客户向服务器发送第一个请求时就开始了一个会话。对该客户之后的每个请求,服务器能够识别出请求来自于同一个客户。当客户明确结束会话或服务器在一个预定义的时限内没从客户接收任何请求时,会话就结束了。当会话结束后,服务器就忘记了客户以及客户的请求。服务器是如何识别管理属于某一个特定客户的会话的?答:(1)当客户向服务器发送第一个请求时,服务器就可以为该客

2021-05-20 21:56:13 905

转载 Web组件重用与JavaBeans

Web组件重用与JavaBeans实验预习内容静态include指令何时执行?主页面和被包含的子页面是否转换为一个转换单元?同一个转换单元的页面之间如何共享数据?答:静态include指令是在JSP页面转换阶段执行。主页面和被包含的子页面转换为一个转换单元。同一个转换单元的页面之间通过隐含变量共享数据。jsp:include动作指令何时执行?主页面和被包含的子页面是否转换为一个转换单元?动作包含的子页面与主页面共享同一个请求吗?在不同的转换单元中如何进行数据的传递和共享?答:jsp:inclu

2021-05-20 21:32:04 497

原创 JSP技术及应用

JSP技术及应用实验预习内容JSP语法元素有哪些?使用时应注意什么问题?答:JSP语法元素有JSP脚本元素、JSP指令、JSP动作、表达式语言、JSP注释五种。使用时应注意每一种JSP语法元素都具有严格定义的语法。JSP页面的生命周期包括哪几个阶段?答:1.转换阶段2.编译阶段3.类的加载和实例化4.调用jspInit() 5.调用_jspService() 6.调用jspDestroy()。JSP指令和动作有哪些?有什么区别?答:JSP指令:page指令、include指令、taglib指

2021-05-20 21:16:47 1334

原创 Servlet技术及应用

Servlet技术及应用实验预习内容Web页面中都可以使用哪些方式来发送HTTP请求?答:Web应用中可以使用GET,POST,HEAD,PUT,DELETE,CONNECT,OPTIONS,TRACE八种请求方式来发送HTTP请求。GET与POST两种请求方式有什么区别?分别适用于什么情况?答:(1)GET与POST两种请求方式的区别:(2)GET与POST两种请求方式所适用的情况:1) 在做数据查询时,建议用GET方式;而在做数据添加、修改或删除时,建议用POST方式。2) GET

2021-05-20 20:49:19 1086

原创 获得圆周率的高精度值

#include<cmath>#define PI acos(-1.0)or#include<cmath>const double PI = acos(-1.0);

2021-01-01 14:29:40 186

原创 1005:质数因子

#include <iostream>using namespace std;int main(){ int m; cin>>m; for(int i=2; i<=m; i++) { while(m%i==0) { m=m/i; cout<<i<<" "; } } return 0;}

2020-11-27 17:46:48 96

转载 C++ STL实验

https://my.oschina.net/qiyong/blog/4673515

2020-10-19 20:55:25 160

原创 双截棍

双截棍#include <iostream>#include <string>#include<bits/stdc++.h>#define MAX 0x7fffffffint a[101];using namespace std;int main(){ int n; cin>>n; int i,j,m=MAX,t; for(i=1; i<=n; i++) { cin>>

2020-08-08 10:41:48 102

原创 装饰效果

装饰效果#include <iostream>#include <string>#include<bits/stdc++.h>using namespace std;int a[1001];int main(){ int n; cin>>n; int MAX=0; int i,j,k,t=0; for(i=1; i<=n; i++) { cin>>a[i];

2020-08-07 21:55:06 226

原创 四平方和

四平方和#include <iostream>#include <string>#include<bits/stdc++.h>#define MAX 0x7fffffffusing namespace std;int main(){ int n; cin>>n; int a,b,c,d; for(a=0; a<=1200; a++) { for(b=0; b<=1200; b

2020-08-07 18:43:17 96

原创 欧拉筛(线性筛)

欧拉筛(线性筛)/求小于等于n的素数的个数/#include<stdio.h>#include<string.h>using namespace std;int main(){int n,cnt=0;int prime[100001];//存素数bool vis[100001];//保证不做素数的倍数scanf("%d",&n);memset(vis,false,sizeof(vis));//初始化memset(prime,0,sizeof(prim

2020-07-28 11:28:57 145

原创 卓越性能模式

卓越性能模式该模式适用于高端电脑,在常用的win10专业版和家庭版中经常会被隐藏,可通过手动开启。以管理员身份打开Powershell,输入以下代码回车开启:powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61开启了以后,就可在电源选项中选择“卓越性能”。...

2020-07-28 10:11:26 1363

原创 素数筛

埃氏筛#include <iostream>#include <bits/stdc++.h>using namespace std;bool prime[1000001];int main(){ int n; cin>>n; memset(prime,1,sizeof(prime)); prime[0]=prime[1]=0; for(int i=2; i<=n; i++) { while

2020-07-25 11:38:59 101

原创 数组“去重”与“排序”

“去重”与“排序”输入有2行,第1行为一个正整数,表示需要输入n个数。(n<=100且输入的数不大于1000)。第2行有n个用空格隔开的正整数。输出也是两行,第1行为一个正整数j,表示去重后剩余有j个数。第2行为j个用空格隔开的正整数,为上述输入数去重后从小到大已排好序的这样一个序列。样例输入1020 40 32 67 40 20 89 300 400 15样例输出815 20 32 40 67 89 400用到了三种解决方法:1.桶排序:

2020-07-22 19:25:08 682

原创 快速排序

快速排序快速排序使用分治法(Divide and conquer)策略来把一个序列(list)分为两个子序列(sub-lists)。具体步骤为:从数列中挑出一个元素,称为“基准”(pivot)。重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准后面(相同的数可以到任何一边)。在这个分区结束之后,该基准就处于数列的中间位置。这个称为分区(partition)操作。递归地(recursively)把小于基准值元素的子数列和大于基准值元素的子数列排序。递归到最底部时,数

2020-07-21 18:42:24 75

原创 斐波那契数列

斐波那契数列斐波那契数列非常容易爆数据范围,所以在运算的时候就要进行取模处理。以下是我的代码:#include <bits/stdc++.h>const int mod=1e9+7;using namespace std;typedef long long ll;ll a[100000];int main(){ int i,n; cin >> n ; a[1]=1,a[2]=1; if(n==1||n==2) cou

2020-06-19 17:01:58 124

原创 Win10家庭中文版 如何启用组策略

对于win10家庭中文版是没有组策略功能的,下面我来介绍一种便捷

2020-06-05 15:59:19 14056 12

空空如也

空空如也

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

TA关注的人

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