- 博客(40)
- 资源 (4)
- 收藏
- 关注
原创 类继承时,由于未注意基类和派生类的构造函数调用顺序导致的异常
构造派生类时,先构造基类。上面代码中,将派生类的成员变量传递给基类,此时,派生类还没有构造,因此传递的东西是未知的。
2024-04-09 19:59:22 138
原创 隐形类型转换,生成临时变量导致的bug
这时,由于GUEST是char*类型,而func2参数类型为std::string,因此func2在调用时触发隐式类型转换,生成一个临时的std::string变量。上面代码func3的参数是lambda函数,func3对这个lambda函数并不会立即调用,而是等到func1返回后一段时间后才调用,即异步调用lambda函数。上面代码中func3是异步调用,其中的lambda函数会在异步调用成功时被调用。因此当func1函数运行结束并返回时,func3中的lambda函数并没有执行。
2024-03-23 11:25:16 295
原创 在vscode中使用Markdown写文档,uml画图或者graphviz画图,实现markdown预览
推荐使用本地jar包的方式。这种方式会出现卡顿的情况。比较复杂,会出现配置不成功。
2024-02-02 19:58:11 307
原创 使用sshpass实现非交互式远程执行任务
sshpass 可以让你使用非交互式方式进行ssh操作,即可以在命令行中提供密码,适合用于shell脚本的编写。
2023-12-27 22:02:10 362
原创 1-2走台阶问题
1-2走台阶问题是典型的动态规划问题,解决问题的关键就是找到递推公式,即将问题的求值过程分解成数个更小问题的求值,最后将这些小问题的求值结果合并得到最终问题的求值结果;而这些小问题的求值又可以进一步分解,只到分解成简单的终点值(如果1级、2级台阶,我们看到能直接说出答案)。得到递推公式以及终点值(结束条件),那么我们直接写递归函数就可以求得结果。然而由于递归函数不注意剪枝,中间有大量的重复计算,因此可以采用空间换时间的方式进行优化,将中间计算结果保存起来,后面通过查表直接得到结果而不用重复计算。
2023-08-27 07:58:13 212 1
原创 OPC UA学习指南
自20世纪90年代初以来,工业自动化领域内,基于PC和软件的自动化系统,特别是基于Windows PC上的可视化和控制应用迅速增长。在过去几年里,标准化的自动化软件开发的一个主要努力方向就是,通过大量不同总线系统、协议、接口访问自动化设备上的数据。
2023-08-09 18:36:48 394 2
原创 数据类型不一致时,a=b=c表达式引起的bug
从网上找的wu_manber算法源代码,运行的时候发现,一旦我要匹配的模式多的时候,就coredump了,core提示"unable to handle kernel paging request at 0xxxxxx",栈指针指向wmprepHashedPatternGroups函数。开始以为问题出在这个函数中的kmalloc调用上,因为前面已经kmalloc了大量内存,很可能在这里需要分配
2016-01-13 16:25:26 531
转载 inet_ntoa连续调用两次产生的返回值相同的原因
inet_ntoa() 返回一个字符指针,它指向一个定义在函数inet_ntoa() 中的static 类型字符串。所以每次你调用inet_ntoa(),都会改变最后一次调用inet_ntoa() 函数时得到的结果。比如:char *a1, a2;a1 = inet_ntoa(ina1.sin_addr); /* this is 166.111.69.52 */a2 = ine
2014-06-27 09:53:47 887
转载 MySQL删除表中重复数据及主键重新排列
MySQL删除表中重复数据及主键重新排列一、删除表中重复数据删除前:1234567891011mysql> select * from duplicate;+----+-------+| id | name |+----+-------+| 1 | wang || 3 |
2014-06-24 11:58:37 872
原创 mysql正则表达式实践
1、统计表中category为空且http_host为ip地址的行数。select count(*) from `log-http-5` where category = "" and http_host REGEXP "^([0-9]{1,3}\\.){3}([0-9]{1,3})(([:]([0-9]{1,})){0,1})$" limit 6;
2014-06-23 13:54:47 359
原创 c语言编程总结
1、出现在输入输出函数中的%*c ,作用是在输入或输出时,跳过一个变量,例如:void main(){ int i=1,j=2,k=3; printf("%d,%*d,%d\n",i,j,k,i);//遇到%*d,就把j跳过了,输出k,故后面应该放4个变量}程序的输出结果是1, 3,1 (如果出现跳过变量的情况,跳过的变量用空格代替,因此3前面多一个空格;
2014-05-30 11:06:04 513
原创 mysql语句总结
select count(*) / ( select count(*) from `log-http-24` AS ass ) from `log-http-24` where category
2014-05-28 09:45:38 489
CAN总线培训资料,CAN总线通信技术
2023-04-13
基于stm32的can双节点通信说明
2023-04-13
边缘计算网关二次开发指南 (Hi-Grid-T2系列).chm
2023-04-13
linux源码编程代码风格推荐,帮忙自己养成记好的编码风格
2023-04-13
使用at8xc51snd1 单片机制作MP3,源代码加原理图
2011-07-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人