![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++primer随笔
波波911
这个作者很懒,什么都没留下…
展开
-
关于*iter++的含义
如果对c语言和c++不熟悉的经常会不清楚表达式*iter++的含义。首先由于后自增操作的优先级高于解引用操作,因此*iter++等效于*(iter++)。子表达式iter++使iter加1,然后返回iter原值的副本作为该表达式的结果。因此解引用操作*的操作数是iter未加1前的副本~!原创 2014-03-17 21:40:29 · 1826 阅读 · 0 评论 -
c++中的#include<new>
在new的头文件中只包含6个重载的new和delete原创 2014-04-24 20:58:00 · 4138 阅读 · 0 评论 -
c++中的static_cast的用法
用法:static_cast ( expression ) 该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法: ①用于类层次结构中基类(父类)和派生类(子类)之间指针或引用的转换。 进行上行转换(把派生类的指针或引用转换成基类表示)是安全的; 进行下行转换(把基类指针或引用转换成派生类表示原创 2014-04-08 11:14:27 · 670 阅读 · 0 评论 -
c++中关于sizeof的用法
char* ss = "0123456789"; sizeof(ss) 结果4 ===》ss是指向字符串常量的字符指针 sizeof(*ss) 结果1 ===》*ss是第一个字符 charss[] = "0123456789"; sizeof(ss)结果11 ===》ss是数组,计算到\0位置,因此是10+1 sizeof(*ss) 结果1 ===》*ss是第一个字符原创 2014-04-07 17:08:08 · 771 阅读 · 0 评论 -
在vector中添加元素的方法
可以用一个vector的下标操作添加元素,但是如果是空的vector就不能用下标进行添加。例如 :vector ivec //ivec是一个空的容器。 for(vector ::size_type ix = 0; ix !=10;++ix ) ive原创 2014-04-21 21:52:47 · 12330 阅读 · 0 评论 -
精讲C++中的const
1、什么是const?常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。(当然,我们可以偷梁换柱进行更新:)2、为什么引入const? const 推出的初始目的,正是为了取代预编译指令,消除它的缺点,同时继承它的优点。3、cons有什么主要的作用?(1)可以定义const常量,具有不可变性。 例如:转载 2014-04-08 11:46:28 · 373 阅读 · 0 评论 -
#define的用法
1 无参宏定义原创 2014-04-05 22:02:01 · 450 阅读 · 0 评论 -
c++中的static的作用?
在C+语言中,关键字static有三个明显的作用:原创 2014-04-06 19:11:07 · 753 阅读 · 0 评论 -
vector中的成员函数
vector是线性容器,它的元素严格的按照线性序列排序,和动态数组很相似,和数组一样,它的元素存储在一块连续的存储空间中,这也意味着我们不仅可以使用迭代器(iterator)访问元素,还可以使用指针的偏移方式访问,和常规数组不一样的是,vector能够自动存储元素,可以自动增长或缩小存储空间,vector的优点:1. 可以使用下标访问个别的元素2.原创 2014-04-05 21:05:26 · 391 阅读 · 0 评论 -
c++ 中的Sleep函数
Sleep函数的一般形式:Sleep(unsigned long);原创 2014-04-20 19:28:02 · 1264 阅读 · 0 评论 -
c++中的五大内存分配!
在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。1、栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等/2、堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回原创 2014-04-04 14:17:40 · 341 阅读 · 0 评论 -
c++primer随笔
处理长字符串有一个更基本的方法,这个方法依赖于很少使用的程序格式化特征:在一行的末尾加一个反斜杠符号,可将此行和下一行当作同一行处理。但是,反斜杠符号必须是改行的尾字符,————不允许在其后面有注释和空格。同样后继行行首的任何空格和制表符都是字符串字面值的一部分。用处:在一个单词中间插入空格!原创 2014-03-10 20:37:32 · 459 阅读 · 0 评论 -
c++中的const 成员函数
const修饰符能修饰类的成员函数而不能修饰普通的自定义函数,类的成员函数加上了const修饰符后它用两个作用,1:在该函数内不允许对类的私有数据成员进行修改,2:当声明了一个const的该类对象时,该对象只能调用该类的const成员函数而不能调用非const成员函数.如果声明一个非const的该类对象,该对象既可以调用const成员函数也可以调用非const成员函数原创 2014-04-01 20:41:45 · 332 阅读 · 0 评论 -
拷贝构造函数
1、拷贝构造函数具有一般构造函数的所有特性,其形参是本类的对象的引用。其作用是使用一个已经存在的对象,去初始化同类的一个新对象。如果程序中没有定义类的拷贝构造函数,系统就会在必要是自动生成一个默认的拷贝构造函数,这个默认的拷贝构造函数的功能是,把初始值对象的每个数据成员的值都复制到新建的对象中。2、拷贝构造函数在一下三种情况下会被调用: (1):当用类的一个对象去初始化该类的另一对象时原创 2014-03-20 21:41:32 · 378 阅读 · 0 评论 -
c++中const 的用法
面向对象是C++的重要特性. 但是c++在c的基础上新增加的几点优化也是很耀眼的 就const直接可以取代c中的#define 以下几点很重要,学不好后果也也很严重 !const 1. 限定符声明变量只能被读 const int i=5; int j=0; i=j; //非法,导致编译错误 j=i; //合法 2. 必须初始化原创 2014-03-29 00:08:05 · 395 阅读 · 0 评论 -
C++学习之Pair
Pair类型概述pair是一种模板类型,其中包含两个数据值,两个数据的类型可以不同,基本的定义如下:pair a;表示a中有两个类型,第一个元素是int型的,第二个元素是string类型的,如果创建pair的时候没有对其进行初始化,则调用默认构造函数对其初始化。pair a("James", "Joy");也可以像上面一样在定义的时候直接对其初始化。由于pair类型的使用比转载 2014-05-25 19:39:55 · 407 阅读 · 0 评论