美文网首页
《C++ Primer Plus》笔记>注意点小结

《C++ Primer Plus》笔记>注意点小结

作者: 染微言 | 来源:发表于2017-04-18 15:15 被阅读29次

小注意点:

  1. wcha_t 类型为宽字符类型,能存储较大的字符,相应io需要使用 wcin 和 wcout。
  2. unsigned char 和 signed char 的区别在于能存储字符编码的范围不同,无符号char类型可以存储0-255。
  3. cout.setf(ios.base::boolalpha);
    这条语句的效果是显示判断语句的返回值为布尔值。
  4. new 和 delete 应当一起使用来避免内存泄漏。
  5. x = 100 、x ++ 等是判定表达式,具有返回值。
  6. for (int i=0;i;i++) // 在循环结束后变量 i 会消失。
  7. a++使用原值,++a使用增加后的值。
  8. While递增小技巧:
while (a++ < 10)
        cout << a << endl;
// 这确保了先比较 a<10 ,再对 a 进行递增。
  1. 可以将递增运算符用于指针。
double arr[5] {1.2, 37.2, 8.1, 3.9, 0.4};
double *pr = arr;
pr++; 
  1. {int x;} // 定义变量的生存周期为它外面一层花括号
  2. EOF不是有效的字符编码(-1),很多系统的char类型是无符号的,所以测试EOF时需要将返回值赋给 int 变量,而不是 char 变量。
  3. 在输入后用 if 语句判断 cin 输入异常可以用于跳出:
if (!cin){ // 如果上面的输入非法,则执行下面的代码块
        cin.clear(); // 重置输入,删除错误
}
cin.get();

副作用和顺序点:
副作用指的是计算表达式时对某些东西,比如存储在变量中的值进行了修改。
顺序点是程序执行过程中的一个点,在这个点处,进入下一步之前讲确保对所有的副作用都进行了评估。C++中,所有的分号就是一个顺序点。
y = (4 + x++) + (6 + x++)
这个表达式中,无法保证x++是在何处进行。

字符串的比较:
字符数组:
C++中字符串代表着存储这一字符串的地址,所以不能直接比较。应当使用<cstring>中的 strcmp() 函数。相同返回零,第一个字符串排在第二个之前则返回负,否则返回正。
关系运算符可以用来比较字符。
srting类比较:
可以用关系字符串来进行比较,因为类函数重载了这些运算符。

基于范围的 for 循环(C++11):
用于遍历数组或容器类,对其中的元素执行相同的操作。

vector<int> prices (5) = {1, 2, 3, 4, 5} 
for (int x : prices)
        cout << x << endl;
for (int &x : prices)
        x += 1; // &x是引用变量,这样可以修改x

相关文章

  • 《C++ Primer Plus》笔记>注意点小结

    小注意点: wcha_t 类型为宽字符类型,能存储较大的字符,相应io需要使用 wcin 和 wcout。 uns...

  • C++算术类型

    Tags:C++,《C++ Primer Plus》笔记 一、分类## 见下图,注意以下几点: char16_t,...

  • C++循环与决策

    Tags:C++,《C++ Primer Plus》笔记 一、循环## 语法### C++中有三种循环语句,语法与...

  • c++学习笔记——第一天

    一、c++综述 (1)书籍推荐 ①、c++ primer ②、c++ primer plus ③、c++编程思想 ...

  • C++I/O小结

    Tags:C++,《C++ Primer Plus》笔记 一、iostream## 头文件 用于对控制台进行输...

  • C++复合类型

    Tags:C++,《C++ Primer Plus》笔记 一、分类## 如下图,大概分为这些类型,每种类型的声明语...

  • C++模板库笔记

    C++标准模板库笔记(C++ Primer plus) 1.除序列外,vector还是可反转容器(reversib...

  • 《C++ Primer Plus》笔记>指针及存储小结

    声明指针:typeName * pointerName; 指针赋值: 数组名:通常数组名是第一个元素的地址。只有在...

  • C++函数初识

    Tags:C++,《C++ Primer Plus》笔记 一、原型、定义与调用## 一个完整的函数包含原型、定义和...

  • 《C++ Primer Plus》笔记>容器

    STL -> vector:vector 类似于 string 类,也是一种动态数组。在调用时可以在末尾附加或者中...

网友评论

      本文标题:《C++ Primer Plus》笔记>注意点小结

      本文链接:https://www.haomeiwen.com/subject/rqafzttx.html