![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
吃不胖的卷卷
巧者劳而知者忧,无能者无所求。饱食而遨游,泛若不系之舟
展开
-
Exceptional C++ 学习笔记1
第一条 vector的使用 1 v[i] 与 v.at[i] 这个知识点主要是讲用[]和at访问vector元素的区别。如果[]的话,因为标准并没有要求它做范围检查,所以效率较高,但访问越界不会抛出异常,可能会产生未定义行为。如果是用at的话,该成员函数会进行下标越界检查,所以越界时会抛出异常out_of_range。 2 调整vector大小 ...原创 2016-10-02 14:38:50 · 441 阅读 · 0 评论 -
C++ this 指针详解
1. this指针的用处: this指针存在于类的成员函数中,指向被调用函数所在的类实例的地址。 一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果。this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将对象本身的地址作为一个隐含参数传递给函数。也就是说,即使你没有写上this指针,编译器在编译的转载 2016-11-18 10:34:04 · 262 阅读 · 0 评论 -
C++ primer 学习笔记 第9章(1)
顺序容器这部分的内容你在写程序的时候肯定是处处都能用到的,而且会让你的程序很简洁。本章其实是第三章内容的拓展,详细地介绍了标准库顺序容器的知识。一个容器就是一些特定同一类型对象的集合。顺序容器为程序员提供了控制元素存储和访问顺序的能力。这种顺序不依赖于元素的值,而是与元素加入容器时的位置相对应。顺序容器概述所有顺序容器都提供了快速顺序访问元素的能力,但不同容器在两个方面的性能不同:向容器中添加或删...转载 2016-12-21 22:29:23 · 219 阅读 · 0 评论 -
C++ primer学习笔记--第9章(2)
顺序容器 1.顺序容器操作 前面介绍的那些是所有容器都支持的,我们接下来介绍的只适用于顺序容器(以后还会介绍关联容器)。 (1)添加元素 不知道为啥原书篇幅超多,我觉得直接看代码就很明了,所以我就写代码了: list a = {1, 2, 3}; //注释为a的元素内容{1, 2, 3}a.push_back(4); //{1, 2, 3, 4},array和forwar转载 2017-03-19 15:14:07 · 285 阅读 · 0 评论 -
程序编译与预处理
如果一个源程序由多个诸如A.c,B.h等的源文件组成,使用的编译链接器是如何根据这些文件生成可执行文件的?编译链接的机理到底是什么,这是本章要学习的内容。对C语言来说,除了掌握必要的语法机制外,学好预处理命令也是写出高质量代码的前提。 很多示例代码,实际上,哪怕是像Hello,World这样简单的示例程序,都要经过编辑、预处理、编译、链接4个步骤,才能变成可执行程序,鼠标双击就原创 2017-05-28 11:34:49 · 721 阅读 · 0 评论 -
C/C++中extern关键字详解
1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。此外extern也可用来进行链接指定。 也就是说extern有两个作用,第一个,当它与"C"一起连用时,如: extern "C" void fun(int a, int b);则告诉编译器在编译fun这个函数名时按着C的规则去翻译相应的函数名而转载 2016-12-21 16:57:31 · 196 阅读 · 0 评论