03 2021 档案

摘要:编译环境:Windows 10 + VS2015 1、问题 上一篇文章C++函数调用过程解析第3部分执行函数中,说到计算局部变量x和y的地址。在VC6中计算方式分别为[ebp-4]和[epb-8],然而在VS2015中计算方式为[ebp-4-4]和[epb-8-8]。为什么每次计算变量地址时第一个变 阅读全文
posted @ 2021-03-31 18:11 钟齐峰 阅读(360) 评论(0) 推荐(0) 编辑
摘要:编译环境:Windows 10 + VS2015。 0、引言 函数调用的过程实际上也就是一个中断的过程,本文演示和深入分析参数入栈、函数跳转、保护现场、恢复现场等函数调用过程。 首先对三个常用的寄存器进行说明: EIP:指令指针,即指向下一条即将执行的指令的地址。 EBP:基址指针,常用来指向栈底。 阅读全文
posted @ 2021-03-31 16:41 钟齐峰 阅读(1985) 评论(0) 推荐(0) 编辑
摘要:Compiling evironment: linux (ubuntu 16.04)+ gcc-10.2. The post will focus on using export,import,visible and reachable. 1 export C++’s export keyword 阅读全文
posted @ 2021-03-29 15:22 钟齐峰 阅读(146) 评论(0) 推荐(0) 编辑
摘要:Compiling evironment: linux (ubuntu 16.04)+ gcc-10.2. The Post will clarify and discuss what modules are,what they can do,and what they intended to do 阅读全文
posted @ 2021-03-26 16:03 钟齐峰 阅读(149) 评论(0) 推荐(0) 编辑
摘要:1、函数返回值类型推导 c++14对函数返回类型推导规则做了优化: auto func(int i) { //C++11编译非法,c++14支持auto返回值类型推导 return i; } int main() { cout << func(4) << endl; return 0; } 支持函数 阅读全文
posted @ 2021-03-25 14:35 钟齐峰 阅读(725) 评论(0) 推荐(0) 编辑
摘要:编译环境说明:gcc 8.1 + eclipse +windows 10 eclipse cpp默认支持c++14,做c++17开发时,需要手动进行配置。 1、关键字 1)constexpr c++17扩展了constexpr使用范围,既可以用于if语句,也可以用于lambda表达式。 例1 tem 阅读全文
posted @ 2021-03-25 12:06 钟齐峰 阅读(1184) 评论(0) 推荐(0) 编辑
摘要:POD 是 C++ 中一个比较重要的概念,POD 是英文 Plain Old Data 的缩写(通俗讲就是类或结构体通过二进制拷贝后还能保持其数据不变),用来描述一个类型(包括 class、union 和 struct等)的属性。其中Plain表示这个类型是个平凡的类,Old表示其与C的兼容性。C+ 阅读全文
posted @ 2021-03-17 16:48 钟齐峰 阅读(1185) 评论(0) 推荐(0) 编辑
摘要:导读 STL提供四种智能指针:auto_ptr、unique_ptr、shared_ptr和weak_ptr。其中auto_ptr是C++98提供的解决方案,C++11以后均已摒弃。所有代码在gcc 8.1上编译。 设计思想 将基本类型指针封装为类对象指针模板,并在析构函数中编写delete语句删除 阅读全文
posted @ 2021-03-11 16:56 钟齐峰 阅读(249) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示