C++ string类的初步了解
目录
一. 为什么学习string类?
1.C语言中的字符串
2.string类
二. string类的常用接口说明
1.构造
2.容量
size和length
capacity
clear
empty
reserve
resize
3.元素访问
operator[]
at
front、back
4.迭代器
编辑begin、end
rbegin、rend
cbegin、cend、crbegin、crend
5.增添、删除、修改
operator+=
append
push_back
assign
insert
replace
swap
pop_back
6.字符串操作
c_str
find
rfind
substr
7.string类非成员函数
operator+
relational operators
operator>>
getline
一. 为什么学习string类?
1.C语言中的字符串
C语言中,字符串是以'\0'结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需要用户自己管理,稍不留神可能还会越界访问。
2.string类
string类介绍
1. 字符串是表示字符序列的类
2. 标准的字符串类提供了对此类对象的支持,其接口类似于标准字符容器的接口,但添加了专门用于操作单字节字符字符串的设计特性。
3. string类是使用char(即作为它的字符类型,使用它的默认char_traits和分配器类型(关于模板的更多信息,请参阅basic_string)。
4. string类是basic_string模板类的一个实例,它使用char来实例化basic_string模板类,并用char_traits和allocator作为basic_string的默认参数(根于更多的模板信息请参考basic_string)。
5. 注意,这个类独立于所使用的编码来处理字节:如果用来处理多字节或变长字符(如UTF-8)的序列,这个类的所有成员(如长度或大小)以及它的迭代器,将仍然按照字节(而不是实际编码的字符)来操作。
总结:
1. string是表示字符串的字符串类
2. 该类的接口与常规容器的接口基本相同,再添加了一些专门用来操作string的常规操作。
3. string在底层实际是:basic_string模板类的别名,typedef basic_string<char, char_traits, allocator>string;
4. 不能操作多字节或者变长字符的序列。
二. string类的常用接口说明
标红的是常用的
1.构造
在string类的成员函数中,最开始讲的是constructor (构造) 、destructor (析构) 以及operator (赋值)
我们主要来看一下构造
在C++98中,给与了7种方式,我们可以对照着后面给的注释分别来看一下
首先,第一种,不用多说,构造一个空的string类(即一个空的字符串)
第二种的参数是str,即另外一个string类 ,功能实质上就是一个拷贝构造
第三种的参数就变成了三个,分别为str、pos、以及len,其中pos指的是拷贝开始的位置(类似于数组的下标,同样是从0开始),而len指的是所拷贝的长度,而后面的npos则是缺省值
通过索引,我们可以知道,npos的值默认为无符号的-1,即2^31-1,由于我们在创建string类时,长度不可能这么大,所以我们可以当做在不写参数len时,默认为将后面所有拷贝进新的string类
第四种所传的参数则是一个类似于c语言中的字符串
第五种在第四种的基础上,增加了一个参数n,意为将字符串的前n个字符进行拷贝
第六种的两个参数n与c,指的是构造一个size为n的string类并初始化为字符c
第七种需要先掌握迭代器,暂时先放一放
我们可以来实践一下
void Test1()
{string s1;cin >> s1;string s2(s1);string s3(s1, 2, 3);string s4("abcdef");string s5("abcdef", 3);string s6(5, 'a');cout << "s1:" << s1 << endl;cout << "s2:" << s2 << endl;cout << "s3:" << s3 << endl;cout << "s4:" << s4 << endl;cout << "s5:" << s5 << endl;cout << "s6:" << s6 << endl;
}
我们也可以通过监视来看一下string类中的成员变量的情况
当然,在allocator[6]的位置也是存有'\0'的
再往后的destructor(析构),没啥好说的,就固定的一种方式
而operator=的使用方式与拷贝构造类似,这里也就不多做说明
2.容量
后面的Iterators(迭代器)我们先放一放,先来讲一下Capacity(容量)
size和length
都是用来返回字符串的有效长度(即成员变量size)的,那么这两个接口有什么不同呢?没什么不同,那么为什么会存在两个同样方式的接口呢?这是因为,不只是string,其他容器同样也有大小,而就像树一样,它的大小不能使用length(长度)来表示,只能使用size,因此,为了与其他容器保持一致,string的接口就新增了size,而以前用于表示大小的length当然不能舍弃
capacity
返回容量大小(字符串总长度)(即成员变量capacity)
clear
说的也很清楚,清空string,而清空的是字符串中的有效部分
void Test2()
{string s1("abcdef");s1.clear();
}
clear前
clear后
empty
即判断字符串有效部分是否为空,空返回1,非空返回0
void Test2()
{string s1("abcdef");cout << s1.empty() << endl;s1.clear();cout << s1.empty() << endl;
}
reserve
通过解释,我们可以知道该接口是将对象的capacity变为n,当capactiy小于n时,直接扩增到n或者更大,当大于时,其实是一个未定义的行为,会根据编译器进行优化,而同时,不管怎么优化,都不能对字符串的有效部分进行改变。
void Test2()
{string s1("abcdef");cout << s1.size() << endl;cout << s1.capacity() << endl;s1.reserve(14);cout << s1.size() << endl;cout << s1.capacity() << endl;s1.reserve(18);cout << s1.size() << endl;cout << s1.capacity() << endl;
}
很显然,我所使用的vs2022是没有对大于的情况进行优化的
而在s1.reserve(18)中,实际将capacity扩增到了31(加上'\0'为32),这是为什么呢?我们先来探究一下扩增的规律(涉及到后面的增添数据,可以之后返回来看)
void Test3()
{string s1;size_t sz = s1.size();for (int i = 0; i < 1000; i++){s1 += 'a';if (sz != s1.capacity()){sz = s1.capacity();cout << sz << ' ';}}cout << endl;
}
在上面的代码中,我们将size在1000范围内所能扩增到的capacity的大小打印了出来
当然,capacity是不包含'\0'的,因此,我们可以将sz+1打印出来作为真正的大小
可以看到,除了第一次扩增了2倍以外,后面的扩增都大概遵循1.5倍的关系
而在reserve进行扩增时,也会从n向上找一个接近的值进行扩增,这也就是为什么我们上面会扩增到31
resize
简而言之,首先将字符串的长度(size)扩增到n,若是n<=capacity,就往原本字符串的末尾位置到位置n之间存放字符c(若是没有该参数,默认存放‘\0’),若是n>capacity,则先扩容在存放。
而要注意的是,当n<size时,size依旧会改变为n
void Test2()
{string s1("abcdef");cout << s1.size() << ' ' << s1.capacity() << endl;s1.resize(5);cout << s1.size() << ' ' << s1.capacity() << endl;s1.resize(12);cout << s1.size() << ' ' << s1.capacity() << endl;s1.resize(18);cout << s1.size() << ' ' << s1.capacity() << endl;
}
3.元素访问
operator[]
实质上就是下标访问操作符的重载,用法上也是类似
void Test4()
{string s1("abcdef");size_t i = 0;while (s1[i] != '\0'){cout << s1[i++] << ' ';}cout << endl;
}
当然也可以改变一下循环
void Test4()
{string s1("abcdef");size_t i = 0;for(i=0;i<=s1.size();i++){cout << s1[i] << ' ';}cout << endl;
}
当然,由于该函数是传引用返回,我们也可以对其进行修改
void Test4()
{string s1("abcdef");size_t i = 0;while (s1[i] != '\0'){s1[i] = s1[i] - 'a' + '1';cout << s1[i++] << ' ';}cout << endl;
}
而我们可以看到,还有第二种方式,即当对象被const修饰时,返回类型也就变为const char&,这时就只能完成访问,而无法做到改变
而为了越界,operator[] 采用的方式是断言
void Test4()
{string s1("abcdef");size_t i = 0;for(i=0;i<20;i++){cout << s1[i] << ' ';}cout << endl;
}
at
用法其实和operator[]一样
void Test4()
{string s1("abcdef");size_t i = 0;for(i=0;i<s1.size(); i++){cout << s1.at(i) << ' ';}cout << endl;
}
而不同的点在于,at检查越界的方式是抛异常
void Test4()
{string s1("abcdef");size_t i = 0;for(i=0;i<20; i++){cout << s1.at(i) << ' ';}cout << endl;
}
front、back
一个是返回第一个字符,一个是返回最后一个字符,同样都可以访问,对没有const修饰的对象都可以进行改变,都无法对空的string对象进行使用,而它们与begin和end的不同就放在后面的迭代器里讲吧
void Test4()
{string s1("abcdef");cout << s1.front() << " ";s1.front() = 'A';cout << s1.back() << endl;s1.back() = 'F';for (int i = 0; i < s1.size(); i++){cout << s1[i] << ' ';}cout << endl;
}
4.迭代器
begin、end
简单来说,begin是返回的字符串第一个字符的迭代器,end是返回的字符串最后一个字符的下一个的迭代器。
我们可以使用它们来完成遍历
void Test5()
{string s1("abcdef");string::iterator it = s1.begin();for (it; it != s1.end(); it++){cout << *it << ' ';}cout << endl;
}
同样,若是对象没有使用const进行修饰,我们也可以进行修改
void Test5()
{string s1("abcdef");string::iterator it = s1.begin();for (it; it != s1.end(); it++){cout << *it << ' ';*it = *it - 'a' + '1';}cout << endl;for (int i = 0; i < s1.size(); i++){cout << s1[i] << ' ';}cout << endl;
}
这里再插一点,除了operator[]、at以及迭代器,我们也可以使用范围for来进行遍历
我们之前已经学过范围for来遍历数组,而在string类中也可以范围for
void Test5()
{string s1("abcdef");for (auto& e:s1){cout << e << ' ';e = e - 'a' + '1';}cout << endl;for (int i = 0; i < s1.size(); i++){cout << s1[i] << ' ';}cout << endl;
}
rbegin、rend
与begin、rend类似,不同的是rbegin返回的是最后一个字符的反向迭代器,而rend返回的是第一个字符前一个的反向迭代器
void Test5()
{string s1("abcdef");string::reverse_iterator it = s1.rbegin();for (it; it != s1.rend(); it++){cout << *it << ' ';*it = *it - 'a' + '1';}cout << endl;for (it = s1.rbegin(); it != s1.rend(); it++){cout << *it << ' ';}cout << endl;
}
而我们或许会觉得,使用operator[]进行遍历就足够了,迭代器没有什么必要。
的确,在string中,operator[]的确更方便,但, 这并不是在所有容器中通用的,而迭代器是通用的
cbegin、cend、crbegin、crend
就是把begin、end、rbegin、rend中const的方式给单独摘出来了,没啥其他不同
5.增添、删除、修改
operator+=
实际上就是向后增添字符串,三种方式分别是增添string对象、 增添C形式字符串、增添字符
void Test6()
{string s1("abc");string s2("de");s1 += s2;cout << s1 << endl;s1 += "fg";cout << s1 << endl;s1 += 'h';cout << s1 << endl;
}
append
相较于operator,append使用的方式更多一些,大多数的使用方式其实与开始学的构造类似,可以推断出来,而第二种方式简单来说就是将参数str从下标为subpos的位置的长度为sublen的字符串增添到后面,其实参数就是在pos和len的基础上加了一个sub
void Test6()
{string s1("abc"),s2("abc"),s3("abc"),s4("abc"),s5("abc");string s6("def");s1.append(s6);s2.append(s6, 0, 2);s3.append("defg");s4.append("defg",2);s5.append(3, 'e');cout << s1 << endl;cout << s2 << endl;cout << s3 << endl;cout << s4 << endl;cout << s5 << endl;
}
push_back
相较而言,push_back就比较简单了
void Test6()
{string s1("abc");s1.push_back('a');cout << s1 << endl;
}
assign
大概就是重新分配字符串,类似于赋值操作符,只是用法多一些
第一种直接赋值,第二种从下标subpos开始赋值sublen个字符,第三种C类型字符串,第四种C类型字符串前n个,第五种n个字符c
void Test7()
{string s1("abcdef");string s2, s3, s4, s5, s6;s2.assign(s1);s3.assign(s1, 2, 3);s4.assign("abcedf");s5.assign("abcedf",3);s6.assign(3,'a');cout << s2 << endl;cout << s3 << endl;cout << s4 << endl;cout << s5 << endl;cout << s6 << endl;
}
insert
就是插入,也很容易理解
除去迭代器相关的,从上到下一次为pos位置插入str、pos位置插入str的subpos往后sublen长度、pos位置插入C类型字符串、pos位置插入C类型字符串前n项、pos位置插入n个字符‘c’
这些方法和前面的众多接口都是相似的,后面类似的就不举例子了
replace
大部分都关联到迭代器,就先不说了
swap
交换字符串,就一种方法
此外,swap还有非成员函数的重载
pop_back
删除尾部字符
6.字符串操作
c_str
说白了,就是将string对象转换为C类型的字符串,返回首元素地址,而要注意的是,不能改变
void Test8()
{string s1("abcdef");cout << s1.c_str() << endl;
}
find
查找,查找string对象、C类型字符串、字符
找到即返回第一个元素的位置,找不到返回npos
void Test8()
{string s1("abcdef");string s2("bc");cout << s1.find(s2) << endl;cout << s1.find("ef") << endl;cout << s1.find("mn") << endl;cout << s1.find("ef", 5) << endl;cout << s1.find('f') << endl;
}
rfind
功能类似,逆序查找
void Test8()
{string s1("abcdef");string s2("bc");cout << s1.rfind(s2,4) << endl;cout << s1.rfind("ef") << endl;cout << s1.rfind("mn") << endl;cout << s1.rfind("ef", 4) << endl;cout << s1.rfind('f') << endl;
}
我们可以看到第4个,不同于find需要所有字符串在0-pos的范围内,rfind只需要所查找的第一个字符在0-pos内即可找到
substr
从pos位置截断len长度的字符串作为string对象返回
void Test9()
{string s1("abcdef");string s2(s1.substr(2, 2));cout << s2 << endl;
}
7.string类非成员函数

operator+
string对象能和C类型字符串相加
void Test9()
{string s1("abc");string s2("def");cout << s1+s2 << endl;cout << s1 + "def" << endl;cout << 'a' + s2 << endl;
}
relational operators
比较运算符重载,和我们之前学的C类型字符串之间的比较一样。
operator>>
经典的流提取与流插入操作符的重载,我们在前面也或多或少的用到了
getline 
在流插入中,与scanf有同样的问题,可以以空格为间隔符,这样就无法输入带有空格的字符串
void Test9()
{string s1;cin >> s1;cout << s1 << endl;
}
而getline就能解决这个问题
void Test9()
{string s2;getline(cin, s2);cout << s2 << endl;
}
end
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-4506000.html
如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!
【“计算机科学与技术”专业小白成长系列】Linux Shell 编程 极简教程
Linux Shell 编程 极简教程 内容摘要 本文是 Linux Shell 编程简单入门。主要内容: Linux 简介Shell 编程入门Kotlin 脚本与 Shell 脚本Linux grep 命令与 awk 命令vim 编辑器简单使用 Linux 简介 Linux 英文解释为 Linux is not Unix。 Linux 内核最初只是由芬…...

CCSP(Certified Cloud Security Professional) 国际注册云安全专家
关于 CCSP 认证 CCSP,即云安全专家认证,是由 (ISC) 推出的,旨在确保云安全专业人员在云安全设计、实现、架构、运营、控制和遵守监管要求方面拥有所需的知识、技能和能力。CCSP 认证将信息安全专业知识应用到云计算环境中,展示了…...

react解析md文件
效果 需求 因为项目最后是对外开放的,所以在项目中有个文档中心,里面有一些用户手册、开发文档等展示需求。同时支持文章目录点击。 分析 第一时间想到的就是解析md文件了,语法简单,满足大部分写作要求,市面上也很有…...

第一部分:Java基础编程-Java语言概述
写在最前:Java基础是JavaEE、大数据、Android开发的基石! Java基础,必看学习流程,不要一下子扎进去乱学! (截图自bilibili尚硅谷视频,尚硅谷yyds!) Java旅途开始 1.软件开发介绍 …...

Golang 滑块验证库
https://github.com/disintegration/imaging...

Java基础之HashSet和TreeSet
目录单列集合Set集合的特点HashSetHashSet底层结构元素添加流程TreeSet集合特点排序规则使用比较器常见问题最后单列集合 Collection是单列集合的根接口 Collection有两个重要的子接口,分别是List和Set Set集合的特点 无序:元素存入和取出的顺序无法…...

md 文件的编辑
md 文件的编辑正文:1、标题的几种写法:第一种:第二种第三种2、列表3、区块引用4、华丽的分割线5、链接6、图片7、代码框8、表格9、强调10、转义11、删除线参考文献:正文: 1、标题的几种写法: 第一种&…...

VBA常用语法,2019-2021历年阿里Java面试真题
//获取单元格背景色 Range(“A1”).Interior.ColorIndex //设置单元格背景颜色 For Each item In Range(Range(“A1”), Range(“H10”)) If item.value 0 Then item.Interior.ColorIndex 10ElseIf item.value 1 Then item.Interior.ColorIndex 11End If Next //赋值…...

C语言跨平台游戏开发
通常我们认为,纯C(即不使用C艹)很难实现跨平台的游戏。这是由于它支持的图形库非常少,一般需要调用系统句柄才能进行图形化。但是很显然这是一个及其费时费力还容易出错的方式。所以,在这篇文章里,我希望给…...

01背包问题及其应用
01背包问题 有n个重量为w1,w2,w3…的物品,价值分别为v1,v2,v3…,现有一个容量为C的背包,问在不超过背包容量的条件下,所装物品的最大价值是多少? 这个问题有两个变量,分别为物品总数n,背包容量…...

css层级
一,在页面中,若导航栏下拉框无法正常盖住下面的文本时,可以采用z-index属性,z-index的属性值越高说明级别越高,最高为999. 注:1,如果定位的元素层级一样,下边框的元素会盖住上边元素…...

基于python的C环境安装(NLP文本纠错项目使用)
1.下载c环境:(window系统) 链接:Visual Studio: 面向软件开发人员和 Teams 的 IDE 和代码编辑器 (microsoft.com) 2.安装 1.打开下载的安装包 2.进入如下页面,按照下图进行勾选,注意,其它不要动…...

同步异步的区别
定义:同步和异步关注的是消息通信机制 (synchronous communication/ asynchronous communication)。同步,就是调用某个东西是,调用方得等待这个调用返回结果才能继续往后执行。异步,和同步相反 调用方不会理解得到结果࿰…...

Arduino笔记-解决上传时出现avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00问题
错误是这样的: 我这里出现这个问题的原因是0口和1口被插了, 也就是RX口和TX口插上了。 将其拔下来,再上传就可以了。...

html5表格源码,HTML5表格制作源代码.doc
HTML5表格制作源代码.doc (4页)本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!3.9 积分HTML5表格制作源代码 (姬岚洋)代码:th{font-size:18px;text-align:center;padding-top:…...

java 方法重写概念
重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写! 重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。 重写方法不能抛出新的检查异…...

win10重启网卡,解决掉线等问题
关于wifi突然信号不良以及乱掉线的情况(重启网卡) 问题描述:今天突然发现wifi信号一格都没有,但是可以正常连接,但是在使用过程中出现多次信号中断以及掉线,而且wifi每次重新连接都需要输入密码,首先第一次选择重启计算机,但是没有效果,wifi显示信号低. 采用重启网卡方式(win…...

LINGO编程简介与实例
LINGO是一种专门用于求解数学规划问题的软件包。由于LINGO执行速度快,易于方便地输入、求解和分析数学规划问题,因此在教学、科研和工业界得到广泛应用。LINGO主要用于求解线性规划、非线性规划、二次规划和整数规划等问题,也可以用于求解一些…...
重启网卡的几种方法
1.重启windows网卡命令 rem 禁用网卡netsh interface set interface 本地连接 disabledrem 启用网卡netsh interface set interface 本地连接 enabled 2.根据相关信息作出如下修改 rem 禁用网卡 netsh interface set interface 以太网 disabled rem 启用网卡 netsh interfac…...

[IOS开发]模仿微博的客户端(1)
1.在 AppDelegate 文件中设置程序的根控制器 2.创建 tabbar 控制器 2.1在 DIDTabBarController 文件中创建四个子控制器,并给其设置标题和图片 2.2由于要将系统默认渲染的图片样式改成自定义的,利用 imageWithRenderingMode 方法,写了一个分类UIImageimage 2.3一共需要创建…...

sub1G-CC1310的应用开发之入门
写在前面 CC1310是TI新出的一款sub1G射频模块,具体参数见数据手册吧,这款芯片的SDK跑的是rtos系统,是基于free-rtos定制的ti-rtos,多任务运行。芯片集成了两个核,一个M3做控制MUC,一个M0负责射频。官方提供…...

cc2530 uart注意事项
cc2530 (协议栈内)串口使用事项: 1.头文件 #include "MT_UART.h"2.初始化和任务注册MT_UartInit(); MT_UartRegisterTaskID(task_id); 3.使用方法: HalUARTWrite(0,"Hello zigbee\r\n",14);4.编译要加上宏:ZTOOL_P1(IA…...

EOS系列 - WASM智能合约 - 内置方法
EOS系列 - 智能合约进阶 1.eosio::same_payer 第一个只是一个常量表达式,可在修改多索引表的条目时使用。当使用eosio::same_payer时,将要使用的新RAM(如果有的话)分配给已经为表项支付的相同帐户。 用法: statstable.modify( st, eosio::same_payer, [&]( auto& s…...

[附源码]java毕业设计社区健康服务平台管理系统lunwen
项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…...

《JAVA疯狂讲义》学习笔记第六天
1、使用final修饰的引用类型变量不能被重新赋值,但可以改变引用类型变量所引用对象的内容。 2、final变量可执行“宏替换”;因为在编译时就可以确定其值。 3、对于一个private方法只在当前类显示,子类无法访问,若在子类中定义一…...

Docker容器------安装及优化
一,容器核心 docker本质就是宿主机的一个进程,docker是通过namesoace(命令空间)实现资源隔离,通过cgroup实现资源限制,通过写时复制技术,实现了高效的文件操作(类似虚拟机的磁盘比如…...

达达兔网站服务器是哪里,www.dadatutu.cc
Domain Name: DADATUTU.CCRegistry Domain ID: 147251347_DOMAIN_CC-VRSNRegistrar WHOIS Server: whois.godaddy.comRegistrar URL: http://www.godaddy.comUpdated Date: 2020-05-14T03:25:10ZCreation Date: 2020-02-21T01:13:00ZRegistry Expiry Date: 2022-02-21T01:13:0...

简单好听的id_这些女生王者id简单干净名字,不信你不心动!
很多妹纸都喜欢玩王者荣耀这个游戏,而且还玩的非常的溜。对于游戏的注册,自然是要起个游戏名字,很多女生都会很纠结要起个什么样的名字合适。本文就是为大家分享一些女生王者id简单干净名字,这些名字很好听,总有一个会让你心动。 女生王者id简单干净名字 【古风类型名字】…...

软件测试之接口测试
现在很多公司都有做接口测试的要求,这时很多之前一直做功能测试的伙伴们就比较措手不及了,怎么办呢?今天小编就来就着接口测试的话题来讲解下接口测试的一些知识。 1、接口测试的背景 1)什么是接口测试呢? 接口测试是测…...
(12)go-micro微服务JWT跨域认证
文章目录一 JWT介绍二 JWT优缺点三 JWT使用1. 导包和数据定义2.生成JWT3.解析JWT4.完整代码四 最后一 JWT介绍 JWT 英文名是 Json Web Token ,是一种用于通信双方之间传递安全信息的简洁的、URL安全的表述性声明规范,经常用在跨域身份验证。 JWT 以 JS…...

微信接口返回invalid media_id hint原因分析
调用微信获取临时素材接口,https://api.weixin.qq.com/cgi-bin/media/get?access_tokenACCESS_TOKEN&media_idMEDIA_ID,出现这样的错误:{"errcode":40007,"errmsg":"invalid media_id hint: [01073723]"}…...

CC2530接入OneNET-实现数据上传和命令下发
前言: 之前物联网课设时就想用CC2530单片机和ESP8266-01S来实现数据上传和远程控制,当时在网上也找了很多资料,无果。本来是不想再碰这个的,由于我同学做毕设需要用到,所以再努力了一把,也终于解决了困扰很…...

centos8下重启网卡命令_Centos8 重启网卡方法
问题情况:1、虚机centos8 修改为静态ip后,由于网卡网段变更,无法上网2、最小化安装,没有ifconfig3、firewalld,selinux关闭4、ping 不通物理机根本原因:静态路由配置错误解决方案:1、linux命令&…...
Redis篇:单线程I/O模型
关注公众号,一起交流,微信搜一搜: 潜行前行 redis 单线程 I/O 多路复用模型纯内存访问,所有数据都在内存中,所有的运算都是内存级别的运算,内存响应时间的时间为纳秒级别。因此 redis 进程的 cpu 基本不存在磁盘 I/O 等待时间、内存读写性能问题,CPU 不是 redis 的瓶颈(…...

一文读懂参考基因组和基因组注释+最全下载方法
文章目录一、什么是参考基因组和基因组注释?二、参考基因组版本命名1、常用人参考基因组对应表2、常用小鼠参考基因组对应表三、下载1、NCBI2、Ensemble3、GENCODE4、UCSC5、iGenomes四、其他参考基因组信息一、什么是参考基因组和基因组注释? 先来理一…...

CentOS8.5重启网卡出错
当使用命令systemctl restart network.service重启网卡时,报错:. Failed to restart network.service: Unit network.service not found. 解决办法: 1.查看网络配置: ip addr 查看网卡: nmcli 2、修改为DHCP或修改默认路由为正确的默认路由地址: 修改配置文件:…...

全新版大学英语综合教程第二册学习笔记(原文及全文翻译)——7A - The Glorious Messiness of English(英语中绚丽多彩的杂乱无章现象)
Unit 7A - The Glorious Messiness of English Some languages resist the introduction of new words. Others, like English, seem to welcome them. Robert MacNeil looks at the history of English and comes to the conclusion that its tolerance for change represen...

源码分析七大设计原则之迪米特法则
源码分析之七大设计原则 一、迪米特法则 定义:迪米特法则又叫最少知道原则,通俗的来讲:就是一个类对自己依赖的类知道的越少越好 对于被依赖的类来说,无论逻辑多么复杂,都尽量地的将逻辑封装在类的内部,对…...

CentOS安装完没有ip地址的解决方法
新安装的CentOS,输入ip addr命令可以发现没有ip地址: 解决方法如下: Step1:执行下面的命令,修改配置文件 vi /etc/sysconfig/network-scripts/ifcfg-ens33把最后一行ONBOOTno,改成yes,然后保存 Step2&a…...

纯js制作的XML在线编辑器(支持修改本地文件)
前言 一年多没更新博客了,原因是疫情期间《骑马与砍杀2》发售,然后去写游戏MOD去了。 用C#大概写了7个月的游戏MOD,每天晚上肝到很晚,然后期间又因为介绍这个游戏MOD,学习了PR,然后做起了B站的UP主。 再…...

hive建表详解
建表语法: CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment], …)] [COMMENT table_comment] //指定的是表的描述信息 [PARTITIONED BY (col_name data_type [COMMENT col_comment], …)] [CLU…...

Java版快排(递归)
public class Test {private static int Partition(int[] arr, int start, int end) {int key arr[start];while (start < end) {while (arr[end] > key && end > start)end--;arr[start] arr[end];while (arr[start] < key && end > start)...

Spring Boot学习篇(十)
Spring Boot学习篇(十) shiro安全框架使用篇(二)——登录实例(密码以密文方式存储,不含记住密码) 1.模拟注册时,生成密文到数据库中 1.1 在zlz包下创建util包,并在下面创建SHAUtil01类(初始里面无方法)和SHAUtil02类,其目录结构如下所示 1.2 两种生成密文的方式 1.2.1 自己…...

C语言所有知识点小结
C语言 目录C语言一、基础知识(1)C语言关键字(2)C程序的主要部分(3)转义序列 escape sequence(4)基本运算符1.赋值运算符2.算术运算符、-、*、/3.逗号运算符,4.逻辑运算符&&、…...

php fread 逐行读取,php fread函数使用方法总结
php fread函数使用方法总结php fread函数用于读取文件(可安全用于二进制文件),其语法是fread(file,length),参数file必需,指规定要读取打开文件,length 必需,指规定要读取的最大字节数。php fread函数怎么用࿱…...

西门子plc如何用c语言编程软件下载,s7一200编程软件下载安装
s7-200编程软件是专为西门子s7-200系列可编程控制器而设计开发的一款工业化编程工具,该工具基于Windows系统而开发,功能强大,既可用于开发用户程序,又可实时监控用户程序的执行状态,是西门子PLC用户不可缺少的开发工具…...
CC2640之看门狗
测试环境 协议栈版本:BLE-STACK V2.1 IAR开发环境版本:IAR for Arm 7.40 硬件设备:Amo-SmartRF v2.0 开发板(对应TI官方的SmartRF06EB 开发板) 示例测试Demo工程:simpleBLEPeripheral工程 系统驱动层RTO…...

竞赛——【蓝桥杯】2022年11月第十四届蓝桥杯模拟赛第一期Java
1、二进制位数 问题描述 十进制整数 2 在十进制中是 1 位数,在二进制中对应 10 ,是 2 位数。 十进制整数 22 在十进制中是 2 位数,在二进制中对应 10110 ,是 5 位数。 请问十进制整数 2022 在二进制中是几位数? 答案…...

重启网卡
ifconfig eth0 up|down service network restart|start|stopTYPEEthernet #网卡类型 DEVICEeth0 #网卡接口名称 ONBOOTyes #系统启动时是否自动加载 BOOTPROTOstatic #启用地址协议 –static:静态协议 –bootp协议 –dhcp协议 IPADDR #网卡IP地址 NETMASK #网卡网络地址 GATEWA…...

楼市越来越冷,业主们能否靠出租增值?
国内二手房市场越来越冷。 刚刚过去的10月份,北京、上海、广州、深圳等一线城市的二手房成交量依旧低迷,要么出现了两位数的环比下滑,要么勉强维持在环比基本持平的局面,刺骨的寒意已经不需要再做赘述。 即便是曾经成交火爆的二…...

DVWA靶机安装教程
DVWA靶机详细安装教程 首先搭配环境windows10 1、先下载"PhpStudy"环境,官方链接:https://www.xp.cn/。 如图显示; 我用的是phpStudy v8.1版本最新版本。 下载后点击运行就直接无脑安装(注意:安装选盘…...

CentOS8重启网卡命令
CentOS已经更新到8.2了,整个系统也发生了许多的改变,比如:重启网卡的命令,万万刚拿到CentOS8的时候,配置完ip后熟练的systemctl restart network,但是紧接着就让我大吃一惊,居然报错了ÿ…...

中西医结合骨伤科学练习考试答案
一、单选题(每题2分,共50道小题,总分值100分) 1.伤后肘关节呈半屈曲位,肘内侧肿胀,疼痛,关节屈伸功能受限,明显畸形,有弹性固定感,肘后三点关系不正常,应考虑是:( ) A尺骨鹰嘴骨折 B肱骨外髁骨折 C肱骨内上髁Ⅰ~Ⅱ度骨折 D...
CC2640R2F BLE5.0 CC2640R2F的存储架构
存储架构 Flash Flash以4KB为一个Page进行擦除/写入操作(如果在一个Page需要写入一个字节,需要将整个Page擦出),Flash组成部分及其它们关联的链接器文件如下。 对于协议栈以库文件方式链接的工程(_lirary): Application Image Code Space(应…...

cc.formatStr
可以格式化字符串,目前支持 %d 和 %s cc.log(cc.formatStr("id%d, name%s", 100, abc));...

python关键词对联_如何用深度学习框架PaddlePaddle实现智能春联
引言:不知不觉春节假期马上到来,在今年的春节话题中,不难发现,除了七大姑八大姨亲切问候这些常规话题,人工智能的踪迹也是随处可见。AI在以全新的面貌向我们展示值得期待的未来,比如今天,我们可…...

linux重启网络报网卡激活失败,Centos重启网卡失败原因
准备重启网卡,用了两条命令都没能成功[rootlocalhost Desktop]# ifup eth0Active connection state: activatingActive connection path: /org/freedesktop/NetworkManager/ActiveConnection/1^C** Message: Caught signal 2, shutting down...[rootlocalhost Deskt…...

Linux下 Apache Kafka 安装与配置
一、linux版本:lsb_release -a 二、官网地址:http://kafka.apache.org/downloads 我们选择稳定版:2.8 三、安装ZooKeeper 当前下载的kafka程序里自带Zookeeper,可以直接使用其自带的Zookeeper;也可以自己安装 ZooKee…...

传统文化之广场舞乱相到底反映出中国社会怎样的深层次矛盾
“广场舞”在今天的中国业已成为一个充满争议的文化焦点。它流行的原因通常被解读为廉价和低门槛,或者是集体主义时代传统的回潮。伴随着这种解读,“广场舞”和广场舞者被接连不断的负面新闻淹没,似乎整个社会以“噪音污染”和“空间占用”为…...

刷题记录:牛客NC16416逛公园
传送门:牛客 题目描述: 策策同学特别喜欢逛公园。 公园可以看成一张 N 个点 M 条边构成的有向图,且没有自环和重边。其中 1 号点是公园的入口, N 号点是公园的出口,每条边有一个非负权值,代表策策经过这条边所要花的时间。 策策…...

【操作系统】—I/O设备的基本概念和分类
【操作系统】—I/O设备的基本概念和分类 一、什么是I/O设备 I/O设备:I/O设备就是输入/输出(Input/Output) I/O设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备,属于计算机中的硬件部件。 二、I/O设备的分类 三、I/O设…...

操作系统 设备基本概念和分类
I/O设备基本概念和分类 什么是I/O设备按使用特性分类按传输速率分类按信息交换的单位分类I/O设备 I/O就是输入和输出(Input / Output) I/O设备就是可以将数据输入到计算机,或者可以接受计算机输出数据的外部设备,属于计算机中的…...

深入使用noexcept
深入使用noexcept简介好处坏处适用场景不适用场景实验结果总结参考资料简介 noexcept是C11引入的,表明函数是否会抛出异常。正确使用它可以优化性能,错误使用则会带来麻烦。 noexcept使用语法有两种: noexcpetnoexcept(expression) 第二种…...

[转]-Snake模型openCV代码
Snake模型&&openCV代码 出处:http://blog.csdn.net/hongxingabc/article/details/51606520 主动轮廓线模型又称为Snake模型,由Kass于1987年提出,它对于在噪声和对比度不敏感,能将目标从复杂背景中分割出来,…...

主动轮廓的snake模型
#define _CV_SNAKE_BIG 2.e38f #define _CV_SNAKE_IMAGE 1 #define _CV_SNAKE_GRAD 2 /*F/// // Name: icvSnake8uC1R // Purpose: // Context: // Parameters: // src - source image, // srcStep - its s...

系统分析师案例必备知识点汇总---2023系列文章三
系统设计 1、面向对象设计 分析类图是从用户的角度出发得到的业务“系统”,而设计类图更多的是从系统、软件的角 度来描述和表达系统。二者具体的区别: 分析类图:在需求分析阶段,类图是研究领域中的概念;分析类图主要…...

CHAPTER 8 为镜像添加SSH服务
为镜像添加SSH服务8.1 基于commit命令创建8.1.1 准备工作8.1.2 配置软件源检8.1.3 安装和配置SSH服务8.1.4 保存镜像8.1.5 使用镜像8.2 使用Dockerfile创建8.2.1 创建工作目录8.2.2 编写run.sh脚本和authorized_keys文件8.2.3 编写Dockerfile8.2.4 创建镜像8.2.5 测试镜像很多时…...

渡一领跑计划错题集
1 报错,常量是固定值,不可以加加 NaN.toString() NaN.toString()不会像3.string先被识别浮点数,所以不报错,并且调用Number.prototype原型上的toString方法...

{渡一教育}成哥HTML课程干货笔记整--8
啊啊啊啊啊,好几天没认真学习了,笔记整理的都少了,每天看着渡一教育的学习群里都在学习或者答疑,真是有种罪恶感,要重新开始安排学习内容了,不能这么懒惰! 任意选择器:hover 是一种比较常见的写…...

【渡一教育】Web前端开发之HTML+CSS精英课堂
简略文档版笔记 分节详细笔记...

渡渡鸟传
(本故事纯属虚构,如有雷同,绝不可能)毛里求斯1000年一群渡渡鸟来到他们的繁殖地他们三年前从这里离开历经磨难千辛万苦只有十分之一存活回到了繁殖地毛里求斯1100年一群渡渡鸟来到他们的繁殖地他们三年前从这里离开历经磨难千辛万…...

渡我不渡她用计算机怎么弹,抖音渡我不渡她手势舞分解 渡我不渡她手势舞教程...
抖音渡我不渡她是近期很火的一首歌,如果你对这个歌很感兴趣,想要学手势舞却学不会的话,可以看看本站提供的抖音渡我不渡她手势舞分解动作,希望大家会喜欢。抖音《渡我不渡她》手势舞教程《渡我不渡她》是一首有些佛门古道气息的歌…...

jQuery jsonp跨域请求数据 的封装(渡一)
渡一教育 2019 4 21 浏览器的同源策略:限制从一个源加载的文档或脚本与来自另一个源的资源进互。同源策略:协议 域名 端口号 相对于两个页面是相同的 则为同源 ,否则就为非同源 —浏览器提出安全策略 我们一般通过 js 发起jsonp的跨域请求对请求的数据…...

抢渡长江论文matlab,模型解析及Matlab程序 抢渡长江
抢渡长江问题提出:“渡江”是武汉城市的一张名片。1934年9月9日,武汉警备旅官兵与体育界人士联手,在武汉第一次举办横渡长江游泳竞赛活动,起点为武昌汉阳门码头,终点设在汉口三北码头,全程约5000米。有44人…...

渡一教育公开课web前端开发JavaScript精英课学习笔记(十一)try……catch……和 ES5的严格模式
try……catch…… <script type "text/javascript">try{//正在执行的代码,如果出错会终止执行,转到执行catch中的代码console.log(a);console.log(b);console.log(c);}catch(e){// e 代表捕捉到的错误对象Error,名称可随意…...

渡一教育公开课web前端开发JavaScript精英课学习笔记(八)对象、原型
原型 原型是构造函数 Function的一个属性,它定义了构造函数制造出的对象的公共祖先。通过该构造函数产生的对象,可以继承该原型的属性和方法。原型也是对象。利用原型的特点和概念,可以提取共有属性。 对象的有个隐式的属性:__p…...

渡一教育公开课web前端开发JavaScript精英课学习笔记(二十二)jQuery、css3 实现横向轮播图
横向轮播图 <!DOCTYPE html> <html><head><title>横向轮播图</title><style>* {margin: 0;padding: 0;}.wrapper {position: absolute;top: 50px;width: 100%;height: 200px;display: flex;justify-content: center;align-items: center;t…...

商人渡模型matlab及模型假设,商人和仆人渡河
2019-10-28商人和商代有关吗|商人和两个骗子的故事富商预备了大批货物准备到另一个城市销售。两个骗子装成生意人与他同行。走了一天以后,两个骗子当夜商量如何骗富商的财物,但是,他俩都想独吞,各自背着对方准备了一份有毒的食物。…...

渡一教育公开课web前端开发JavaScript精英课学习笔记(十三)Date对象
Date <h1>日期对象</h1> <script type "text/javascript">//日期对象 是系统提供的已封装好对象,操作日期的函数。var date new Date();console.log(date.getDate());console.log(date.getDay());console.log(date.getMonth());cons…...

渡一教育公开课web前端开发JavaScript精英课学习笔记(十)数组的常用方法
数组的常用方法(ES3) 以ES3.0为基础,ES5.0 在ES3基础上扩展,ES6.0 在ES5基础上扩展。 改变原数组的方法: push、pop、shift、unshift、sort、reverse、splice. <script type "text/javascript">va…...

渡一教育公开课web前端开发JavaScript精英课学习笔记(六)函数及作用域
函数作用域 函数有个隐藏的属性[[scope]],这个属性就是作用域,其存储了运行期上下文的集合。 [[scope]]存储运行期上下文集合,这些集合呈链式关系,就是作用域链。 [[scope]]属性结构 第一个元素 >>> 当前运行函数的 …...

渡河问题matlab程序,商人渡河问题(MATLAB版)
写得比较详尽,基本上解释清楚了,慢慢看能够看懂。目录一、题目要求二、算法思想三、如何编程四、流程图1. 主程序2. 递归函数crossRiver五、源程序代码1. 主程序 DFS.m2. 过河函数 crossRiver.m3. 输出解的函数 showSolution.m六、结果显示七、小结一、题…...

JS__继承模式,命名空间,对象枚举__渡一
继承发展史 传统形式 ——>原型链 过多的继承了没用的属性 Grand.prototype.lastName "Ji"; function Grand() { } var grand new Grand();Father.prototype grand; function Father() {this.name hehe; } var father new Father();Son.prototype father;…...

{渡一教育}成哥HTML课程干货笔记整--1
这是我最近学习HTML课程整理出来的比较有用的干活资料,希望可以帮到大家学习 我学习的课程是腾讯课堂内【渡一教育】里成哥的HTMLCSS课程 是免费的公开课,可以学习全部的课程,内容也很有帮助,我将课程链接放在下面,如果…...

《Web前端开发之HTML+CSS精英课堂【渡一教育】》文档版笔记(完结)
这个笔记本来是想先上文档版的,但由于里面有些标签会导致显示不出来,所以之前只上了个思维导图版的。 时隔好久,想发篇markdown版的博文时,一进来就看见这篇文档版的草稿,顺便学下markdown的写法,也补上上文…...

渡一前端教育圣杯模式
圣杯模式 function inherit (Target,Origin){function F() {};F.prototype origin.prototype;Target.prototype new F();Target.prototype.constuctor Target;Target.prototype.uber Origin.prototype; } father.prototype.lastName "niu"; function Father(){…...

渡一js
javascript 编译语言 c c 优点:快 不足:移植性不好(不跨平台) 是单线程 变量命名规则 1.必须以字母、下划线、符号开始;2.标识符只能包含下划线和符号开始; 2.标识符只能包含下划线和符号开始;…...

CSS渡一教程学习笔记(七)--单行文字水平居中,pm与em的区别。
单行文字水平居中 div{width: 400px;height: 400px;border: 1px solid black;/*水平居中*/text-align:center;/*单行垂直居中*/line-height: 400px;/*line-height:文字行高,不等于文字大小(高度) 如果等于div高度,则单行文字居中*//*text-incident:2em;…...

CSS渡一教程学习笔记(六)--层模型、position定位。
层模型 如何让html元素在网页中精确定位,就像图像软件PhotoShop中的图层一样可以对每个图层能够精确定位操作。CSS定义了一组定位(positioning)属性来支持层布局模型。 层模型有三种形式: 1、绝对定位(position: absolute) 2、相…...

【vue系列-06】vue的组件化编程
深入理解vue的组件一,vue组件1,什么是vue组件2,单文件组件和非单文件组件3,非单组件的基本使用4,vue组件命名规范4.1,一个单词组成4.2,多个单词组成5,组件与组件间的嵌套6࿰…...

Vue+Element UI表格列的显示和隐藏
如下代码: <template><div><el-table:data"tabledate"height"400">//使用v-if else 控制两列的显示和隐藏,每个列必须加唯一标识符:key"Math.random()",否则会不起作用,无法控制…...

element 弹出框宽度设置
之前用element的弹出框时宽度都是设置的百分比 今天设置成固定的宽度发现效果没有出来 问了好多人才发现我写错了 width’ 1056px; ’ 这样写是不对的 不需要后面的分号 分号去掉就正常了 width’ 1056px ’ 这样写才正确~犯了一个不可饶恕的错误!✎ <el-dialog…...

vue3 element plus el-input 无法输入问题
最近用vue3 element plus 进行开发,发现el-input 无法输入,代码如下: <template><el-card><template #header><div class"card-header"><el-form ref"searchForm" :model"searchForm&q…...

给element的select添加复选框
需求:要求给select多选的时候,给下拉框前加上复选框样式 element select原样式 需要更改后的样式 html <el-selectv-model"searchObj.knowledgeIds"class"select-box"filterablemultiplecollapse-tagsstyle"margin-left…...

vue3.0、cli4项目引入element plus
element团队为新版的 vue-cli4 准备了相应的 Element Plus 插件 安装依赖 npm install element-plus --savemain.js全局引入,样式文件需要单独引入 import { createApp } from vue import ElementPlus from element-plus; import element-plus/lib/theme-chalk/in…...

Element UI表格行拖拽功能
效果 <template><div class"hello"><!-- 拖拽功能必须绑定row-key唯一 --><el-tableref"dragTable":data"tableData"style"width: 100%"row-key"id"><el-table-column prop"date" la…...

修改element弹出框title样式
使用element给 弹出框标题 其中一段文字添加标签怎么做??? 之所以这样做是为了实现UI设计的原型 前面处理结果四个字的样式和后面动态生成数据的样式不同所以要这样子做 使用template 标签添加 slot属性 就可以啦 <el-dialog:visible.syn…...

element表格组件错位的问题
解决方案 /* 修改element表头错位的问题 */body .el-table th.gutter{display: table-cell!important;}body .el-table colgroup.gutter{display: table-cell!important;}.el-table .warning-row {background: oldlace;}.el-table .success-row {background: #f0f9eb;} 如果我…...

element-ui Cascader 获取label
element-ui Cascader 获取当前选择的节点数据包括label,value,自定义都能拿到 <el-cascader:options"options"ref"cascaderAddr":props"{ checkStrictly: true }"change"handleChange"clearable><template slot-scope"…...

element ui 引入css,element-ui引入方式、自定义主题
1. element-ui组件引入方式:1)完整引入在 main.js 中写入以下内容:import Vue from vue;import ElementUI from element-ui;import element-ui/lib/theme-chalk/index.css;//引入全部的样式Vue.use(ElementUI);2)按需引入 借助插件,无需再引入…...

element-ui iconfont乱码问题处理
一、问题 使用element-UI的项目,打包部署以后,偶尔会出现iconfont显示乱码,但是刷新后又会好。研究后,查看打包后的css, 图标字体的content经过scss编译以后变成了这样 不过正常情况下图标还是会显示的,但是偶尔进入页…...

【9】C语言_while循环 | break | contiune
目录 1、循环种类 2、while结构 3、while中的break 4、while中的continue 5、EOF getchar putchar 1、循环种类 循环语句 while for do...while 2、while结构 while(表达式) 循环语句; while括号里如果为真。那就一直执行,遇到假就退出循环。3、while中的break …...

element click intercepted
自动化测试记录--element click intercepted 问题描述:我实现一个循环点击和校验弹出框内容信息是否正确的时候。代码跑起来有时候pass有时候fail,fail的时候会报错: selenium.common.exceptions.ElementClickInterceptedException: Message…...

Vue + Element 配置报错
1.安装: cnpm i element-ui -S2.main .js 引入: import ElementUI from element-ui; import element-ui/lib/theme-chalk/index.css; Vue.use(ElementUI);3.运行报错: ERROR in ./node_modules/_element-ui2.4.2element-ui/lib/theme-chalk/f…...
element的安装
一.认识及安装 element是基于vue2.0的桌面组件库. 安装前提:node版本大于6.0 可以使用三种方法使用element 1.用cdn引入样式和组件库直接进行开发 <!-- 引入样式 --> <linkrel"stylesheet"href"https://unpkg.com/element-ui/lib/theme-chalk/in…...

vue + element 使用 iframe
vue element 使用 iframe 技术难点: 1、iframe重新设置src不会重新加载的问题! 2、iframe所在的页面中通知父页面关闭模态框以及其他操作的问题(父子通信)! 解决思路: 1、iframe重新设置src后不会重新加载的问题: …...

Element 基本使用
.1、Element介绍 Element:网站快速成型工具。是饿了么公司前端开发团队提供的一套基于Vue的网站组件库。 使用Element前提必须要有Vue。 组件:组成网页的部件,例如超链接、按钮、图片、表格等等~ Element官网:Element - The wo…...
Vue下面安装Element 的详细步骤
项目中在大量的使用vue和Element来书写自己的代码,无论是前台系统还是后天系统。这里我给大家详细的介绍一下如何在vue项目中引入Element. 首先你要安装了vue,如果没有安装可以参考vue的官方文档进行安装。安装完成后效果如图:现在默认的是不…...
nodeJs + webpack+vue+ element ui 环境安装
一.安装nodeJs 1.打开NodeJs官网:https://nodejs.org/en/download/ 点击下载 2.双击安装,安装过程基本直接“NEXT”就可以了。(windows的安装msi文件在过程中会直接添加path的系统变量,变量值是你的安装路径,例如“…...

Element基础
Element 基本使用 Element 介绍 Element:网站快速成型工具。是饿了么公司前端开发团队提供的一套基于 Vue 的网站组件库。 使用 Element 前提必须要有 Vue。 组件:组成网页的部件,例如 超链接、按钮、图片、表格等等~ Element 官网&#…...

requests页面常用操作(post、put、get、head、patch、delete方法)
1 requests主要方法2 请求返回信息3 应用3.1 登录页面3.2 退出登录3.3 修改参数3.4 上传文件Requests 是一个 Python 的 HTTP 客户端库。每次调用 requests 请求之后,会返回一个 response 对象,该对象包含了具体的响应信息。可以通过requests模拟提交请求…...

table与json的互转
json是键值对,在Lua中类型是string 主要运用在table中。表:local t{a"1",b"2",c"3",d"4",e"5"}json:{a:"1",b:"2",c:"3",d:"4",e:"5"} table转化…...

网络信息安全 一场没有硝烟的战争
5月27日18时,支付宝宕机超过90分钟,最终公布的原因是“光纤被挖断”。携程于次日上午11时出现相同的情况,宕机持续12小时,网站直至当晚11时才全面恢复正常,而携程官方公布的事故原因是“员工错误操作”。 类似的事件不…...

测试和开发之间的博弈--没有硝烟的战争
你跟开发和谐么? 导语:测试工作从业者,打交道最多的就是开发,而测试和开发之间的关系在行业内被称为‘天敌’。 ‘天敌’关系形成的原因 那作为测试工程师,你知道要怎么更好地来处理跟开发之间的关系么?…...

从零开始设计一个共识算法——一场没有硝烟的战争
目录 1. 拜占庭容错算法 1.1 前言 1.2 概念澄清 1.3 假设 1.4 安全性 1.5 活性 2. 隐藏锁问题 2.1 收集锁 2.2 广播所有锁 2.3 引入固定时延 2.4 增加一个阶段 2.5 方案总结 3. 现有算法对比 3.1 PBFT 3.2 Tendermint 3.3 Hotstuff 4. 总结 5. 附录 5.1 情况…...
SQL vs NoSQL 没有硝烟的战争!
声明:本文译自SQL vs NoSQL The Differences,如需转载请注明出处。 SQL(结构化查询语言)数据库作为一个主要的数据存储机制已经超过40个年头了。随着web应用和像MySQL、PostgreSQL和SQLite这些开源项的兴起,SQL使用量大…...

[JZOJ 5778] 没有硝烟的战争
思路: 记\(dp[i][j] 0/1\)来表示第\(i\)个动物报的数字是\(j\),有无必胜策略。 判断有没有转移就可以了。 输出直接对于每一只动物,看\(dp[i][1->k]\)有没有必胜策略就行了。 #include <bits/stdc.h> using namespace std; int n,m…...
装修,一场没有硝烟的战争
又是周五,开始扯一扯的时间,说说最近的装修的事情。一个人如果没有装修过,那可以说人生的旅途中的风景是不完整的。可能有人说不就是装修,不就是钱的事情,或许是,但对大部分人来说,钱何时变的不…...

docker中基础内容
docker中的核心概念 1、镜像: Image 定义:一个镜像就代表一个软件,比如:mysql 镜像、redis 镜像、es镜像等等2、容器: Container 定义:一个镜像运行一次就会生成一个容器,容器就是一个运行的软…...

思考:数字卫星可视化如何实现?
01.背景 随着信息化时代的到来,全球范围内的通信和数据传输需求急剧增加,传统的有线通信和数据传输方式已无法满足大范围、远距离的通信和数据传输需求,卫星通信和数据传输技术应运而生。实体卫星的发射和运行成本非常昂贵,需要经…...

【整理八】
1、说说你对Event Loop的理解? Eventloop 是一种在编程语言中常用的编程模型,用于处理任务队列中的事件,它可以被用来处理各种任务,包括网络事件、文件读写、定时器、用户界面事件等Eventloop 的工作原理是,它会按顺序处理在任务…...

SQLMAP工具基础使用
本文用的是kali自带的sqlmap工具 我们通过常用命令来理解sqlmap的基本使用 目录 检测注入 获取敏感信息 获取表 获取表的字段 获取数据 --technique 使用指定的注入方式 使用基于时间的延时注入 支持多种注入检测 默认是全部 注入时使用随机的 HTTP User-Agent 设置超时时间 读…...

【分布式】分布式锁
目录一、分布式锁介绍二、基于 Redis 实现分布式锁1. 如何基于 Redis 实现一个最简易的分布式锁?2.为什么要给锁设置一个过期时间?3. 如何实现锁的优雅续期?4. 如何实现可重入锁?一、分布式锁介绍 单机多线程: 在 Jav…...

Pseudo-completeness(前中序遍历确定后序遍历)
题目链接:题目详情 - 7-16 Pseudo-completeness (pintia.cn) 样例1输入: 7 4 2 5 1 6 3 7 1 2 4 5 3 6 7样例1输出: 1 4 5 2 6 7 3 1样例2输入: 10 8 4 9 2 10 5 1 6 3 7 1 2 4 8 9 5 10 3 6 7样例2输出: 2 8 9 4…...

基于springboot+vue的地方美食分享网站
081-springboot基于vue的地方美食分享网站开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包&am…...

【Pyhton】库
其他开发者写好的一些代码存放到库中供人使用 标准库 Python 自带的库,安装 Python 即可使用 分类: 内置函数( print 、input )内置类型( 各种数据类型的内置操作 )文本处理时间日期数学计算文件目录数…...

Linux下LED设备驱动开发(LED灯实现闪烁)
文章目录一、配置连接说明二、更新设备树(1)将led灯引脚添加到pinctrl子系统(2)设备树中添加LDE灯的设备树节点(3)编译更新设备树三、驱动开发与测试(1)编写设备驱动代码(…...

IoC 之 Spring 统一资源加载策略
《JavaPub源码》 IoC 之 Spring 统一资源加载策略 Spring 框架的核心是 IoC(Inversion of Control),它将应用程序的对象依赖关系管理和控制反转到容器中。在 Spring IoC 容器中,组件的创建和配置是通过外部配置文件(…...

如何学习docker
学习Docker可以遵循以下步骤: 了解Docker的基本概念和架构。学习Docker前,需要了解Docker的基本概念和组成部分,包括Docker镜像、Docker容器、Docker仓库、Docker网络等等,同时也需要了解Docker的整体架构和工作原理。 安装和配…...

比肩ChatGPT的国产AI:文心一言——有话说
🔗 运行环境:chatGPT,文心一言 🚩 撰写作者:左手の明天 🥇 精选专栏:《python》 🔥 推荐专栏:《算法研究》 #### 防伪水印——左手の明天 #### 💗 大家好&am…...

数据结构与算法--栈的应用:基于C++STL利用栈实现中缀表达式求值(数域限于非负整数)。
利用栈原理实现简单的中缀表达式求值的一个课程实验定义string ex;存放中缀表达式定义两个栈stack<char> op;//操作符栈stack<int> num;//操作数栈分别存放操作符和操作数核心问题一:如何分离string类型中的数字、运算符、括号?我们注意到如…...

智慧商场精准客流统计系统
随着店铺的精细化运营的深入,对各个店铺的客流进行统计,输出明确的客流统计报表,对店铺的运营及分析有较大的帮助。尤其是在连锁门店、超市、便利店等进行客流统计,能够让总部更快速的了解到各个分店的客流人数,方便店…...

工业识别手眼标定
目录 1 手眼标定的理论基础 1.1 AXXB1.2 约束条件分析 1.2.1 旋转矩阵所需的方程数量1.2.2 平移向量的约束数量2 基于平面运动的外参标定方法 2.1 传感器的旋转轴与平面法向量重合2.2 引入其它约束参考文献附录A 一、手眼标定的理论基础 1.1 AXXB 手眼标定(hand …...

基于ssm流浪动物救助及领养管理系统(文档)024
大家好✌!我是CZ淡陌。一名专注以理论为基础实战为主的技术博主,将再这里为大家分享优质的实战项目,本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目,希望你能有所收获,少走一些弯路…...

使用binlog把数据恢复到指定时间
使用场景 我们的数据库都有在凌晨3点做数据全备份,假如我们的数据库在上午10点出了故障,那我们就可以用备份把数据还原到凌晨3点时的状态,但是3点到10点间的数据变动是没有的,如果要将数据库恢复到故障点之前,那么需要…...

华清远见重庆中心—后端基础阶段技术总结/Java高级/个人总结
目录String字符串String类使用时注意总结字符串String类中的常用方法可变字符串StringBuilderStringBuffer构造方法常用方法注意System类常用方法和属性Runtime类特点Date类构造方法常用方法SimpleDateFormat类构造方法日期模板常用方法包装类特点异常异常的产生异常的分类Exce…...

Android Kotlin协程之Channel的使用
Channel提供了一种便捷的方法使单个值在多个协程之间进行相互传输。 通道提供了一种在流中传输值的方法。 简单说就是Channel用于多个协程之间的通信,让协程之间的协作更加的顺畅。 主要内容: 一、通道基本使用二、通道的容量三、迭代Channel四、prod…...

在 AI 上训练 AI:ChatGPT 上训练另一种机器学习模型
ChatGPT 可以像 Linux 终端一样运行,并在给出以下提示时返回执行结果。下面我来带大家操作起来。 文章目录终端操作训练机器学习模型镜像演示终端操作 输入:I want you to act as a Linux terminal. I will type commands and you will reply with what…...

Docker之路(8.Docker网络、Docker0)
理解 Docker0 1.首先使用 ip addr 查看 lo: 是我们本机的回环地址eth0: 是我们系统的内网地址,例如我的就是阿里云内网地址docker0: 安装docker后 docker0 的地址 2. docker 是如何处理容器网络访问的? 2.1 先运行一个tomcat容器来测试 docker run…...

【Unity】创建一个自己的AR安卓程序
目录1 环境配置2 下载官方提供的AR Starter工程3 AR Starter工程中的包以及打包设置3.1 Package Manager3.2 Player Settings4 创建一个新的AR场景5 AR场景中的物体6 在unity中运行AR场景7 在AR场景的基础上添加自己的想法7.1 修改Cube的旋转速度/方向7.2 将Cube替换为其他物体…...

sensor 噪声
目录 改善信噪比SNR: 随机噪声: 空间噪声(模式噪声 pattern noise,非均匀噪声non-uniformity noise) 噪声来源: 在sensor层次改善噪声: 内容为学习记录,大部分从网上摘抄的。 …...

Linux下,几个关于容量获取命令
序言:Linux下存在很多命令,其中也存在很多获取容量的命令开发应用的经常会碰到一些需求,例如:1. 获取下当前设备存储空间,例如,总大小多少,剩余大小多少之类类似,还有检测U盘&#x…...

计算机常见的进制和单位
1. 十进制 - 进制说明:以 10 为基数的进制。 - 应用场景:常见的计数方式,如人民币金额、年龄等。 - 中文表达:十进制。 2. 二进制 - 进制说明:以 2 为基数的进制。 - 应用场景:计算机内部使用的基本计数…...

【AI工具大全】不应该只知道ChatGPT
AI工具导航:AI导航 | 深度导航 ChatGPT网址导航:GitHub - LangLangShanDeNanKe/chatgpt: ChatGPT网址导航,分享免费好用AI网站! 最大的AI工具目录:Futurepedia - The Largest AI Tools Directory | Home 生成图片或…...

ICG-PEG-CRGD-吲哚菁绿-聚乙二醇-环肽;ICG可用于肝脏手术的肝段及半肝染色显影、肿瘤边界界定及肝断面胆漏侦测等方面。
ICG-PEG-CRGD-吲哚菁绿-聚乙二醇-环肽 中文名称:-吲哚菁绿-聚乙二醇-环肽 英文名称:ICG-PEG-CRGD 性状:绿色粉末 溶剂:二氯甲烷等常规性溶剂 稳定性:冷冻保存 分子量:1000、2000、3400、5000等&#…...

Go 设计模式中工厂方法模式应用
工厂方法模式(Factory Method Pattern)是一种常见的设计模式,它属于创建型模式。在 Go 语言中,工厂方法模式经常被用于对象的创建和初始化。 在工厂方法模式中,我们定义一个抽象的工厂接口,用于创建一系列…...

机器学习中的五种回归模型及其优缺点
线性回归 回归是在建模过程中用于分析变量之间的关系、以及变量是如何影响结果的一种技术。线性回归是指全部由线性变量组成的回归模型 线性回归的几个特点: 1. 建模速度快,不需要很复杂的计算,在数据量大的情况下依然运行速度很快。 2. 可以…...

verilog的经典电路详解
经典的电路的控制 例如 :spi 控制器 文档 design spec (1) IO postlist (2) feature list (3) 框图:对其进行分解,分隔 ,查看每个模块接口都有那些信息 设计人员 : 对自己的代码心里有数 全加器 提供进位输出&#x…...

神经网络之反向传播算法(加入Nesterov动量的误差反向传播算法)
文章目录1、Nesterov动量2、结合Nesterov动量的误差反向传播算法3、算法实现3.1 训练过程3.2 测试过程4、参考源码及数据集1、Nesterov动量 在动量法提出不久之后,Nesterov动量也随之被提了出来,此方法属于动量法的进一步发展,与动量法不同的…...

在Ubuntu上使用VSCode编译MySQL Connector/C连接库
首先下载并解压MySQL Connector/C源码,然后执行以下步骤: 1、安装MySQL Connector/C依赖:在终端中输入以下命令来安装MySQL Connector/C的依赖项: sudo apt-get install build-essential cmake 2、下载并解压MySQL Connector/C源…...

LeetCode 2395 - 和相等的子数组
给你一个下标从 0 开始的整数数组 nums ,判断是否存在 两个 长度为 2 的子数组且它们的 和 相等。注意,这两个子数组起始位置的下标必须 不相同 。 如果这样的子数组存在,请返回 true,否则返回 false 。 子数组 是一个数组中一段…...

游戏平台商店化的功能特点
帮助用户高效的获取游戏以及游戏相关内容是游戏平台的核心,基于这个需求在平台功能的设计上与其他类型产品也有着类似的思路。商店模式的特点诸如百货商店、超市、书店以及其他类型的商店,都会根据推荐、分类两个特点提供商品。 如果把游戏比作书籍&…...

多线程进阶学习08------CAS与原子类详解
CAS CAS介绍 CAS的全称是:比较并交换(Compare And Swap)。在CAS中,有这样三个值: V:变量var,也即AtomicInteger类当中被声明为volatile 的valueE:期望值(expected)U:新…...

牛刀小试(牛客小题)
今天为大家带来了几道牛客网的题 很简单 注重基础BC105 矩阵相等判定描述KiKi得到了两个n行m列的矩阵,他想知道两个矩阵是否相等,请你回答他。(当两个矩阵对应数组元素都相等时两个矩阵相等)。输入描述:第一行包含两个整数n和m,表…...

开启新航路,拓尔思发力AIGC市场 | 爱分析调研
2022年,随着AI聊天机器人GhatGPT在世界范围内持续火爆,极具创意、表现力、个性化且能快速迭代的AIGC技术成功破圈,成为全民讨论热点。 AIGC是指在确定主题下,由算法模型自动生成内容,包括单模态内容如文本、图像、音频…...

彻底关闭Windows更新
一、关闭Windows Update服务 1、按“Windows R”键,打开运行对话框,并输入“services.msc”,然后再单击“确定”。 2、在弹出的服务窗口中,找到“Windows Update”选项并双击打开它。 3、在弹出的“Windows Update的属性”对话框…...

Array.from() 超全用法详解
Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括 ES6 新增的数据结构 Set 和 Map)。 下面是一个类似数组的对象,Arr…...

IP编辑框(官方、网上、自定义)——QtWidget
前言 最近小工具界面上用到了ip编辑框,目前是直接放了个编辑框QLineEdit,因为属于自用,就不用写诸多限制。但是时间上有多余,就用官方的(即在QLineEdit基础上直接设置的)、网上的(QLineEdit拼接…...

【Note8】
#!/bin/bash # # Copyright 2019-present Huaqin. All Rights Reserved. # # This program file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the # Free Software Foundation; versio...

ELK企业级日志分析平台(二)
文章目录一、kibana数据可视化1.部署2.定制数据可视化(1)网站访问量(2)访问量排行榜(3)创建dashboard,大屏展示二、ES集群监控1.启用xpack认证2.metricbeat监控3.filebeat日志采集一、kibana数据…...

金三最冷春招?你工作找的怎么样?
今年3月,说它是史上“最冷春招”也不为过,不少朋友都反馈说自己投的简历石沉大海,这些似乎都证明了一件事:今年找工作真的难! 破局最重要的一点是:不断提升个人价值。 一个人在职场里、在专业领域、在技术…...

C# 连接Oracle数据库和读取数据
一直没有Oracle数据库使用的经验,现在项目对接需要使用Oracle数据库,正好花点时间来学习学习,学点皮毛然后使用用在项目上就好了。 前面的文章对Oracle数据库的安装,以及Navicat for Oracle可视化工具安装、数据库视图/表的创建进…...

面试准备啊
fail fast 是把数组原来的更改次数记住 每次都去比较 变了 就抛异常 如果数组容量没到64 会先扩容 再树化 缺点:全是偶数 hash分布不均匀 质数比较好(二次哈希也不需要) 效率好 2的n次幂 使用内存屏障解决指令重排序 第一次扩容和之后的不…...

一篇学会redis
一、Redis概述 Redis是一个开源的key-value存储系统。支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集…...

这几个免费PPT模板、素材库,你绝对不能错过
1、菜鸟图库 ppt模板免费下载|ppt背景图片 - 菜鸟图库 网站有各种类型的素材,主要以设计素材为主,但办公类素材也很多,PPT模板就有上万个,而且经常更新。模板质量都很高,分类也很清晰,全部都能免费下载&am…...

JS-对象篇
内容 简单介绍 重点介绍三个 Array,String和JSON 后面这两个不是重点 BOM-浏览器对象模型 DOM-文档对象模式(JS中每个HTML标签都封装成一个DOM对象) Array 和java不同 方式一 JS中是var 变量 new Array()(这个变量名后面没有[]这个标记&…...

vue项目使用xshell部署到服务器
萌新小白疯狂百度,累哭了。 后端部署:后端jar部署 百度,csdn上的大致分两条路线 1,服务器上 安装tomcat 部署服务 2,服务器上安装 nginx部署服务 我下面使用的是第二种方法,第一种我也没有成功…...

Leetcode 二分查找的一些思考
正常做法是class Solution { public:int search(vector<int>& nums, int target) {int l0,rnums.size();while(l<r) {int mid(lr)/2;if(nums[mid]<target){lmid1;}else if(nums[mid]>target){rmid;} elsereturn mid;}return -1;} };为什么是 rnums.size() 而…...

五、k8s 生命周期管理和服务发现
文章目录前言深入理解 Pod 的生命周期Pod 的完整生命周期如何确保 Pod 的高可用健康检查探针优雅启停案例Service 对象Service 对象Endpoint 对象EndpointSlice 对象Service、Endpoint 和 Pod 的对应关系kube-proxyNetfilter 和 iptableskube-proxy 工作原理DNS 与 域名服务k8s…...

个人练习-Leetcode-835. Image Overlap
题目链接:https://leetcode.cn/problems/image-overlap/ 题目大意:给出两个位图矩阵img1[][]和img2[][],其中元素只有0和1。一次平移是指将一个图像里【所有的1】都向左/右/上/下移动一格。求经过若干次平移后,两个图像能重叠的1…...

Java ---包
(1)定义 包是Java语言有效地管理类的一个机制。在不同Java源文件中可能出现名字相同的类,如果用户想区分这些类,就需要使用包名。使用包名可以有效地区分名字相同的类,当不同Java源文件中的两个类的名字相同时&am…...

【前沿技术】文心一言 PK Chat Gpt
目录 写在前面 一、文心一言 二、Chat GPT 三、对比 四、总结 写在前面 随着人工智能技术的不断发展和普及,越来越多的智能应用走入了人们的日常生活,如智能语音助手、智能客服、机器翻译等等。在这些应用中,自然语言生成(…...

Centos系统服务器怎么查看端口是否开放?
不同的linux系统查看端口是否开放的不同,在某些环境下,需要依赖于服务,如果centos中并没有装相关的服务,就不一定能生效。所以具体使用哪种方法,取决于环境,可以每一种都试试。 方法:1、利用tel…...

每天学一点之Servlet
一、web资源 1、web资源的概念 将web应用部署到tomcat中,web应用中所有的内容都是服务器中的资源 2、web资源的分类 web资源的分类:web应用中src中编写的动态资源,web应用中web中编写的静态资源 静态资源:每次访问时…...

记人生第一次正式马拉松!
历时近五个小时,完成了人生的第一次正式的马拉松比赛;起步阶段,很多人朝前挤,我想先热身再说,不用太着急,慢慢跑;还试着边跑边看电影,但不成,只要一熄屏电影就不播了。跑了2公里&…...

【必须收藏】别再乱找TiDB 集群部署教程了,这篇保姆级教程来帮你!!| 博学谷狂野架构师
TiDB 基础使用 TiDB dashboard使用 TiDB Dashboard 是 TiDB 自 4.0 版本起提供的图形化界面,可用于监控及诊断 TiDB 集群。TiDB Dashboard 内置于 TiDB 的 PD 组件中,无需独立部署。 [外链图片转存中…(img-nQFfHgkf-1679905899529)] 集群概况 查看集群…...

Slope One:一种简单但实用的推荐算法
Slope One推荐算法 Slope One是一种简单但实用的协同过滤推荐算法。它的基本思想是如果两个项目对同一用户有相同的评分差值,那么这两个项目对其他用户也应有相同的评分差值。 Slope One通过对评分差值的利用从而减少所需的数据,这使得它在数据稀疏的情况下仍能有效运行。 算…...

安装MinIO
MinIO是一个高性能的、分布式的对象存储服务,能够在常规硬件上支持PB级别的存储规模。本文将介绍在CentOS系统中安装MinIO的步骤。步骤1:安装wget在开始安装MinIO之前,需要安装wget命令行工具。可以使用以下命令在CentOS系统中安装wget&#…...

今年面试好激烈!
金三银四过去一半,市场火热,但是大家就业压力却没有缓解多少。 很多粉丝后台留言,Java程序员面临的竞争太激烈了…… 我自己也有实感,多年身处一线互联网公司,虽没有直面过求职跳槽的残酷,但经常担任技术面…...