美文网首页
c++ primer 阅读 day4

c++ primer 阅读 day4

作者: HenryTien | 来源:发表于2017-12-20 19:53 被阅读10次

    2.5.2 auto 类型说明符

    可以从表达式推断出要定义变量的类型,

    1. 编译器是将引用的对象的类型作为auto的类型。
    2. 去除顶层const特性。

    2.5.6 decltype 类型指示符

    不是根据表达式的初始化变量确定类型。而是返回操作数的数据类型。
    decltype((variable)) 双层括号的结果永远都是引用,dectype(variable)而单层括号是 只有variable本身是引用时,才返回引用。

    #include<iostream>
    int main()
    {
        int a = 3, b = 4;
        int i = 42, *p = &i, &r = i;
    
    
        decltype(a) c = a;
        decltype((b)) d = a;
        decltype(a = b) f = a;
        decltype((i)) e = i;
        decltype(r+1) g = 45;
        decltype(*p)  z = a;
    
        std::cout<<"c="<<c<<std::endl;
        std::cout<<"d="<<d<<std::endl;
        std::cout<<"f="<<f<<std::endl;
        std::cout<<"e="<<e<<std::endl;
        std::cout<<"g="<<g<<std::endl;
        std::cout<<"z="<<z<<std::endl;
    
        ++c;
        ++d;
    
        std::cout<<"c="<<c<<std::endl;
        std::cout<<"d="<<d<<std::endl;
        return 0;
    }
    
    

    output:

    c=3
    d=3
    f=3
    e=42
    g=45
    z=3
    c=4
    d=4
    

    2.6.1 定义Sales_data类型

    struct Sales_data {
        std::string bookNo;
        unsigned units_sold = 0;
        double revenue = 0.0;
    };
    
    
    Sales_data accum,trans,*salesptr;
    

    定义一个Book 结构体

    #include<iostream>
    struct Book
    {
        std::string bookName;
        int bookNumber;
    };
    
    int main()
    {
        Book book;
        book.bookNumber = 1;
    
        std::cout<<"Input your BookName and Book Number"<<std::endl;
        std::cin>>book.bookName>>book.bookNumber;
        std::cout<<"Book Name: "<<book.bookName<<" Book Number: "<<book.bookNumber<<std::endl;
    
        return 0;
    }
    

    2.6.3 编写自己的头文件

    • 预处理器
      确保头文件被包含多次,仍然能够正常工作。

    很清晰,很喜欢,感觉这本书很不错。

    相关文章

      网友评论

          本文标题:c++ primer 阅读 day4

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