zoukankan      html  css  js  c++  java
  • c++ Primer 第四章不熟悉知识点总结

    一、如果我们想要测试一个算术对象或者指针对象的真值。可直接用if语句。

    1 int  temp= 12 if(temp) { }    //尽量不要去使用if(temp == 1)
    3 
    4 bool temp_t  =true;
    5 if(temp_t)        //尽量不要去使用if(temp_t == true)

     二、除非必须,否则尽量不用递增或者递减的后置版本

    1 int a,b = 0
    2 b = ++a;   //其中a=1,b=1,因为是先加的
    3 int a,b = 0
    4 b = a++; //其中a=1,b=0,因为是先赋值以后再加的 

    三、解引用和后置++可以混用

    1 auto vc = vat.begin();
    2 while(vc != vat.end() && *vc >= 0)
    3 {
    4     cout << *vc++ <<endl; //打印出此容器负数之前的所有对象
    5 }
    6 
    7 // *vc++ 的意思是vc++ 的优先级高于*vc,所以vc++相当于位置加一,然后进行解引用,得到vc的值。

    在代码中我们可以用简洁的代码,尽量使用简洁的代码,比如前面的解引用和递增的混用。 

     四、条件运算符(?:)

     1     vector<int> vat;
     2     int temp;
     3     while (cin >> temp)
     4     {
     5         if (temp)
     6         {
     7             vat.push_back(temp);    //给容器中增加对象
     8         }
     9         else
    10         {
    11             break;
    12         }
    13     }
    14     for (auto vc = vat.begin(); vc != vat.end(); ++vc)
    15     {
    16         *vc < 0 ? *vc = 5 : *vc;  //如果vc的值小于0,就赋值为5
    17         cout << *vc << endl;
    18     }

    ?前面是条件,如果为真,:为如果为假的结果。

  • 相关阅读:
    Git 中 .gitignore 的配置语法
    DMX512协议
    k8s 报错总结
    yum 源配置
    docker 安装 docker-compose
    docker 搭建 Harbor 仓库
    linux 远程执行命令
    远程从服务器A拷贝文件到服务器B
    docker 搭建私服仓库
    awk和xargs清除docker 容器、镜像
  • 原文地址:https://www.cnblogs.com/xiaodangxiansheng/p/11361752.html
Copyright © 2011-2022 走看看