菜鸟笔记
提升您的技术认知

C++ 笔记 第48页

This指针大揭秘

菜鸟阅读 : 2497赞(0)

原理 this指针是什么? 1.this指针是类的指针,指向对象的首地址。 2.成员函数默认会隐式的包含this指针形参 3.在成员函数中所有对成员变量的调用都会默认转换成用this指针对成员变量的调用 4.this指针只能在成员函数中使用...

为什么(i++)不能做左值,而(++i)可以

菜鸟阅读 : 2689评论(0)赞(0)

算下来已经很久以前了,大概有那么几个星期了吧。看到了帖子上有人问为什么下面的语句的对错原因 int i = 0; int *ip = &(i++); //错误 int *ip = &(++i); //正确 看到上面的语句,当...

代码中++i 与 i++的区别

菜鸟阅读 : 2890评论(0)赞(0)

i++ 与 ++i 的主要区别有两个: 1、 i++ 返回原来的值,++i 返回加1后的值。 2、 i++ 不能作为左值,而++i 可以。 毫无疑问大家都知道第一点(不清楚的看下下面的实现代码就了然了),我们重点说下第二点。 首先解释下什么...

Linux系统中的异常堆栈跟踪实现

菜鸟阅读 : 3352评论(0)赞(0)

在Linux中做C/C++开发经常会遇到一些不可预知的问题导致程序崩溃,同时崩溃后也没留下任何代码运行痕迹,因此,堆栈跟踪技术就显得非要重要了。本文将简单介绍Linux中C/C++程序运行时堆栈获取,首先来看backtrace系列函数——使...

C++抛异常时如何获取异常时的堆栈调用信息

菜鸟阅读 : 3739评论(0)赞(0)

问题背景 一般来说,我们使用第三方代码的时候,不可避免的会遇到异常信息。例如调用错误,库中会抛出异常。经常是由于上下文日志不足,我们只能看到catch处的日志,而不清楚异常是哪些函数调用导致。这导致定位问题比较麻烦,经常要花比较长时间去跟进...

C/C++进程内存布局

菜鸟阅读 : 1932评论(0)赞(0)

代码区 存放 CPU 执行的机器指令。通常代码区是可共享的(即另外的执行程序可以调用它),使其可共享的目的是对于频繁被执行的程序,只需要在内存中有一份代码即可。代码区通常是只读的,使其只读的原因是防止程序意外地修改了它的指令。另外,代码区还...

C++四种强制类型转换介绍

菜鸟阅读 : 2900评论(0)赞(0)

隐式类型转换是编译器自动隐式进行的,需要在代码中体现,而显示类型转换由程序员明确指定。 C++支持C风格的强制转换,但是C风格的强制转换可能带来一些隐患,让一些问题难以发现。 所以C++提供了一组适用于不同场景的强制转换的函数: stati...

c++ 指针和数组及动态内存管理

菜鸟阅读 : 2372评论(0)赞(0)

指针和数组 C++笔记——指针和数组及动态内存管理 RAM RAM,随机存取寄存器,random-access memory。 位、字节、字 位 —— bit。 字节 —— byte。由8个位构成,并且足以存储一个char类型的数据。 字 ...

C++ 模板类声明头文件和实现文件分离,如何编译?

菜鸟阅读 : 3271评论(0)赞(0)

创建的对象 是属于模板类实例化后的类的,而不是属于模板类的。换言之模板类不进行实例化就不能创建对象。 《C++ Template》第六章讲过这个问题 组织模板代码有三种方式: 1.包含模型(常规写法 将实现写在头文件中) 2.显式实例化(实...