每日杂记
goto2091
举一反三求甚解。
热爱计算机科学。
展开
-
aspectc++初级用法
AspectC++用法详细教程见http://www.aspectc.org/doc/ac-languageref.xhtml实例example文件里, 有一个随机事件发生程序——SimpleEventLoop,aspectC++最适合的是插装事件日志编译和使用见AutoMonitor/lib/aspectC++/examples/ 里面编写的示例, acc的文件后缀名为.ah,本质是一种特殊的C++头文件。ac++是编译AspectC++程序的编译器。实现将AspectC++代码转化为C原创 2020-09-07 12:14:21 · 2019 阅读 · 2 评论 -
关于tcp和udp的小结
网络的概述网络的核心是分开的终端的应用程序之间通过信息的交流来完成功能。围绕着这些信息,如何使得这些信息能够准确地传递到某个终端的应用程序中,并且使得该应用程序能够准确读出这些信息的内容。所以有了这些各式各样的协议。其中tcp是传输控制协议,而udp是用户数据报协议。当前互联网是以TCP/IP协议族为基础构建的,TCP/IP协议是一系列网络协议的总称,可以划分为四层:链路层、网络层、传输层和应用层。链路层主要负责封装和解封装IP报文。网络层通过各终端连接起来的各类网络的路径,将IP报文发送给目标原创 2020-09-07 12:04:46 · 206 阅读 · 0 评论 -
suricata的模块和插槽
参考资料suricata官方文档https://suricata.readthedocs.io/en/latest/performance/runmodes.html#different-runmodessuricata的源代码https://blog.csdn.net/shenwansangz/article/details/37900875?utm_medium=distribute.pc_relevant.none-task-blog-utm_term-3&spm=1001.2101.30原创 2020-09-06 17:24:33 · 471 阅读 · 0 评论 -
g++编译器declaration of xxx shadows a parameter 的解决办法
在编译的时候C++编译器报错“declaration of ‘std::ofstream ofile’ shadows a parameter”,检查后发现是形参名和函数内声明的变量重名了。funcA(string& str){ string str;}类似以上这样的错误。该报错的意思为"xxx形参在函数种又被声明了"。...原创 2020-09-05 22:34:13 · 8477 阅读 · 0 评论 -
ubuntu修改软件源的两个方法
最快方法——替换法刚安装好的ubutun,打开source.list后,用vim替换的方法将所有的us提付出替换为cn,然后保存退出,更新即可。# vim /etc/apt/source.list# 在vim的界面输入 %s/us/cn/g,保存退出# apt-get update%s/us/cn/g, g是全局的意思。%s是替换。修改软件源为本地镜像源把 /etc/apt/source.list中的内容替换为阿里云的源。deb http://mirrors.aliyun.com/ubu原创 2020-09-04 09:00:10 · 495 阅读 · 0 评论 -
解决multiple definition ofxxx
解决multiple definition ofxxx遇到了一次multiple definition of xxx错误,最后发现问题是包含xxx函数的头文件yyy.h中完整地实现了该xxx函数。而头文件起到的是预编译的作用。之前我的程序编译的时候之所以没有报错是因为只有zzz.h中包含了yyy.h,只有一个文件调用该头文件。直到另一个文件调用该函数,又预编译了一次,导致了multiple definition的问题。 解决办法是只在头文件中声明函数,而在c文件中实现该函数。分离完成之后,在make原创 2020-09-03 11:32:11 · 380 阅读 · 1 评论 -
C++的append函数用法
C++的append函数用法append是向string对象的尾部添加字符串或者字符。1.添加C字符串string A = "abc";const char* B = "qwe";A.append(d);//得到abcqwe2.添加C字符串的一部分string A = "abc";const char* B = "qwe";A.append(B,2);//添加qwe的前两个,qw3.添加string类型同上,直接添加即可。4.添加string类型的一部分string A = "原创 2020-09-03 00:09:13 · 2042 阅读 · 1 评论 -
初步理解进程和线程
参考连接该链接的例子举得很好https://www.cnblogs.com/zhangAlin/p/12460358.html。线程一个进程就相当于一个烤筒,不同进程之间互不干涉,各自具有独立的虚拟地址空间。确保其他进程无法访问该进程的内存。程序必须装进内存才能运行,装进内存的程序就是进程。多个进程在操作系统的调度之下,并发执行。有了进程为什么还要有线程?有两点,1是进程是整个程序,这个程序很大的话,如果仍然线性执行,那么就会很慢。尤其是线性执行过程中出现了阻塞,比如等待输入,那就会直接导致原创 2020-09-01 11:18:24 · 99 阅读 · 0 评论 -
code block配置汇总
CodeBlocks最全官方配色方案来自 <https://blog.csdn.net/gatieme/article/details/50847758>codeblocks主题设置来自 <https://blog.csdn.net/pqleo/article/details/24296765>codeblocks 使用汇总来自 <https://blog.csdn.net/sdfgh2046/article/details/5812663...原创 2020-08-30 20:01:50 · 483 阅读 · 0 评论 -
ubuntu安装mingw-w64 for linux
ubuntu安装mingw-w64 for linuxgit clone https://github.com/Zeranoe/mingw-w64-buildcd mingw-w64-build在执行脚本的路径创建src和bld目录。$ mkdir src$ mkdir bld执行该脚本$ ./mingw-w64-build x86_64 # 在linux上安装适用于windows64的mingw。提示缺少 bison flex svn makeinfo执行以下指令:sudo ap原创 2020-08-29 18:04:40 · 6759 阅读 · 2 评论