对于想要入门C++的同学来说,《C++ Primer》是一本不能错过的入门书籍,它用平易近人的实例化教学激发学生的学习兴趣,帮助学生一步步走进C++的大门。在本文中,作者Jacen用两万多字总结了《C++ Primer 中文版(第五版)》1-16章的阅读要点,可以作为该书的阅读参考。注:原书更为详细,本文仅作学习交流使用。
int main()
{
return 0;
}
对象 | 用途 |
|
|
|
|
|
|
|
|
类型 | 最小尺寸 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern int i; // 声明i而非定义i
int j; // 声明并定义j
定义:复合类型是基于其他类型定义的类型。
typedef double wages; //wages是double的同义词
typedef wages *p; // p是double*的同义词
using SI = Sales_item; // SI是Sales_item的同义词
#ifndef SALES_DATA_H
#define SALES_DATA_H
#endif
using namespace:name;
#include <string>
using namespace std;
string s1;
sting s2(s1);
string s3("value");
string s3 = "value";
string s4(n, 'c');
s.empty(); // 判空
s.size(); // 字符个数
s[n]; // s中第n个字符的引用
s1+s2; // s1和s2连接
<,<=,>,>= // 比较
for (declaration : expression)
statement
vector<T> v1;
vector<T> v2(v1);
vector<T> v2 = v1;
vector<T> v3(n, val);
vector<T> v4(n);
vector<T> v5{a,b,c...}
vecrot<T> v5={a,b,c...}
v.empty();
v.size();
v.push_back(t);
v[n];
*iter // 解引用,返回引用
iter->mem // 等价于 (*iter).mem
++iter
--iter
iter1 == iter2
iter1 != iter2
iter + n
iter - n
iter += n
iter -= n
iter1 - iter2 // 两个迭代器相减的结果是它们之间的距离
>, >=, <, <= // 位置比较
size_t cnt = 0;
for(auto &row : a)
for (auto &col : row){
col = cnt;
++cnt;
}
int *ip[4]; // 整型指针的数组
int (*ip)[4]; // 指向含有4个整数的数组
便捷下载,请关注专知公众号(点击上方蓝色专知关注)
后台回复“CPP” 就可以获取《《C++ Primer》中文版英文版》电子书专知下载链接