- 博客(11)
- 收藏
- 关注
原创 SpringBoot + Redis实现订阅和发布源码分析
1.在SpringBoot中配置消息监听容器RedisMessageListenerContainer//自定义消息监听器@Componentpublic class RedisConsumer implements MessageListener { @Autowired private RedisTemplate redisTemplate; @Overr...
2019-04-13 16:38:45
911
转载 局部数组变量生命期结束的那些事
局部数组变量的内存是在函数栈中分配的,函数栈是一级一级的,每进入一个嵌套函数就在栈内存的低地址处为新函数开辟一个栈帧,函数返回后取消这个栈帧,栈帧指示寄存器ESP重新指回当前函数的栈帧,这样刚才那个栈帧中的内存是不应使用的,但是其中的数据还在,通过指针依然可以使用。但是当程序再进入一个嵌套函数时,就会继续在刚才取消栈帧的内存处开辟新栈帧并存储数据,这样就会把原有的数据覆盖。所以读取退出的函数栈中的
2017-07-09 16:39:53
478
原创 C读写字符串函数的停止条件
C语言中的格式控制读入函数scanf(终端读入)和fscanf(文件读入)函数都是以非空白字符开始,以第一个空白字符(空格、换行等)结束,并且系统自动在末尾加上字符串结束标记'\0'; 格式控制输出函数 printf(输出到终端)和fprintf(输出到文件)函数输出时直到遇到'\0'停止输出,并且'\0'不输出; puts函数和fputs函数输出时直到遇到'\0'停止
2017-04-12 17:08:01
2245
转载 C内存分配详解
在任何程序设计环境及语言中,内存管理都十分重要。在目前的计算机系统或嵌入式系统中,内存资源仍然是有限的。因此在程序设计中,有效地管理内存资源是程序员首先考虑的问题。第1节主要介绍内存管理基本概念,重点介绍C程序中内存的分配,以及C语言编译后的可执行程序的存储结构和运行结构,同时还介绍了堆空间和栈空间的用途及区别。第2节主要介绍C语言中内存分配及释放函数、函数的功能,以及如何调用这些函数申请
2017-03-31 09:26:09
261
转载 C++的内部链接与外部链接问题
在说内部连接与外部连接前,先说明一些概念。 1.声明 一个声明将一个名称引入一个作用域; 在c++中,在一个作用域中重复一个声明是合法的,以下都是声明: class bar; //类前置声明 typedef int Int; //typedef 声明
2017-03-28 19:15:35
658
原创 C++中关于类的链接问题的一些个人愚见
最近在思考在不同的源文件中的同一份类的定义(重新写一遍或包含头文件导致)在链接时不会出现重复定义的链接错误,查到资料说类的定义是内部链接属性,意思就是说不同源文件中的类定义相对源文件是局部性质,各个源文件中互相不可见。所以在此基础上我理解的是,类的定义中只有成员变量和成员函数的声明,类的成员变量和成员函数的定义都在定义类的文件名的源文件中,所以在各个源文件中都包含了类的定义,但是并没有包含类的成员
2017-03-28 16:51:43
325
转载 编译与链接
原文来自:http://blog.sina.com.cn/s/blog_5f8817250100i3oz.html 1、编译:编译器对源文件进行编译,就是把源文件中的文本形式存在的源代码翻译成机器语言形式的目标文件的过程,在这个过程中,编译器会进行一系列的语法检查。如果编译通过,就会把对应的CPP转换成OBJ文件。 2、编译单元:根据C++标准,每一个CPP
2017-03-26 21:48:34
175
转载 模板函数的定义问题
源: http://blog.csdn.net/lqk1985/archive/2008/10/24/3136364.aspx前言常遇到询问使用模板到底是否容易的问题,我的回答是:“模板的使用是容易的,但组织编写却不容易”。看看我们几乎每天都能遇到的模板类吧,如STL, ATL, WTL, 以及Boost的模板类,都能体会到这样的滋味:接口简单,操作复杂。我在5年前开始使用
2017-03-26 21:44:18
413
转载 内部链接与外部链接
在编译时,编译器只检测程序语法和函数、变量是否被声明。如果函数未被声明,编译器会给出一个警告,但可以生成目标文件。而在链接程序时,链接器会在所有的目标文件中找寻函数的实现。如果找不到,那到就会报链接错误码(Linker Error)。在VC下,这种错误一般是:Link 2001错误,意思说是说,链接器未能找到函数的实现。 链接把不同编译单元产生的符号联系起来。有两种链接方式:内部
2017-03-26 21:41:13
1123
转载 opengl像素操作及读写
今天我们先简单介绍Windows中常用的BMP文件格式,然后讲OpenGL的像素操作。虽然看起来内容可能有点多,但实际只有少量几个知识点,如果读者对诸如“显示BMP图象”等内容比较感兴趣的话,可能不知不觉就看完了。像素操作可以很复杂,这里仅涉及了简单的部分,让大家对OpenGL像素操作有初步的印象。学过多媒体技术的朋友可能知道,计算机保存图象的方法通常有两种:一是“矢量图”,一是“像素
2017-03-10 09:58:11
3924
转载 字符数组与字符指针变量(转)
1.字符指针可以指向一个字符串。我们可以用字符串常量对字符指针进行初始化。例如,有说明语句:char *str = "This is a string.";是对字符指针进行初始化。此时,字符指针指向的是一个字符串常量的首地址,即指向字符串的首地址。这里要注意字符指针与字符数组之间的区别。例如,有说明语句:char string[ ]="This is a string.";
2017-03-10 09:51:48
586
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人