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

c 笔记-ag真人游戏

c 内功修炼----基础知识的零碎整理

菜鸟阅读 : 1623

c和c 的区别? 第一点就应该想到c是面向过程的语言,而c 是面向对象的语言,一般简历上第一条都是熟悉c/c 基本语法,了解c 面向对象思想,那么,请问什么是面向对象? c和c 动态管理内存的方法不一样,c是使用malloc/fr...

c 内功修炼----面向对象的多态

菜鸟阅读 : 1408

0.概述  多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。...

高并发内存池的实现

菜鸟阅读 : 1526

第一层:thread cache(线程缓存) 1.thread cache是内存池中的第一层缓存, 这一层缓存主要解决的问题就是并发状态下锁竞争的效率问题。 线程在这里申请不需要加锁,每一个线程都有自己独立的cache,这也就是这个项目并发...

this指针大揭秘

菜鸟阅读 : 1456

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

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

菜鸟阅读 : 1684评论(0)

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

代码中 i 与 i 的区别

菜鸟阅读 : 1904评论(0)

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

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

菜鸟阅读 : 2151评论(0)

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

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

菜鸟阅读 : 2628评论(0)

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

c/c 进程内存布局

菜鸟阅读 : 1246评论(0)

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

网站地图