码迷,mamicode.com
首页 > 编程语言 > 详细

C++ 学习基础一

时间:2016-07-14 22:03:31      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:

1.预处理器指示符
如果文件名用尖括号“<”和”>”括起来的,则表示该文件是工程或标准头文件,查找过程会检查预定义的目录。
如果文件名用双引号括起来,则表示该文件是用户自定义的头文件,查找该文件时将从当前文件目录开始。

2.注释块不能嵌套,即如下情况是不允许的
/*
* do not allow /**/
*/

 

3.文件结束符,mac上使用Ctrl + D;windows上使用Ctrl + Z;

—————-2016-07-12———————
4.string对象的输入操作符,
(1).读取并忽略开头的空白字符(如空格,换行符,制表符)
(2).读取字符直至再次遇到空白字符,读取终止.

5.用getline读取整行文本,getline返回的字符串不包含换行符

6.vector——高效的动态的添加元素

(1) 定义和初始化

vector<T> v1;//v1默认为空
vector<T> v2(v1);//v2是v1的副本
vector<T> v3(n,i);//v3包含n个值为i的元素
vector<T> v4(n);//v4含有值初始化的元素的n个副本

(2)常用操作

v.empty();//判断v是否为空
v.size();//返回v中元素个数,返回值类型为size_type
v.push_back(t);//在v的末尾添加一个值为t的元素
v[n];//返回v中位置为n的元素,下标操作不允许添加元素,只能获取指定元素

7.迭代器用于访问容器内的元素,每个容器都定义了一个名为iterator的类型。
迭代器的简单使用:

std::vector<int>::iterator iter;
for(iter = ivec.begin();iter!=ivec.end();iter++)
{
  cout<<*iter<<endl;
}

还可以通过迭代器改变vector中元素的值,具体如下:

std::vector<int>::iterator iter;
for(iter = ivec.begin();iter!=ivec.end();iter++)
{
    *iter = 0;
    cout<<*iter<<endl;
}

除了iterator类型外,还有一种const_iterator类型,该类型的迭代器只能访问vector内的元素,不能更改其元素的值。

std::vector<int>::const_iterator citer;
for(citer = ivec.begin();citer!= ivec.end();citer++)
{
    cout<<"dasfjsdfj "<<*citer<<endl;
}

8.数组
(1)非const常量以及要到运行阶段才知道其值的const常量都不能用于定义
数组的维数。如:

const int value = 3;
int ss_size = 30;
const int bb_size = getsize();
double a[ss_size];//error
int b[value];//ok
int c[bb_size];//error

(2)一个数组不允许使用另外一个数组初始化,也不允许将一个数组赋值给另一个数组,
如下:

int ia[] = {0,1,2};
int ia2[](ia);//error

int ia3[3];//ok ,but elements are uninitialized!
ia3 = ia;//error

 后续更新中......

C++ 学习基础一

标签:

原文地址:http://www.cnblogs.com/calence/p/5671599.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!