zoukankan      html  css  js  c++  java
  • C++ primer第五版随笔--2015年1月6日

    记录自己看这本书时的一些内容。

    一、引用(reference)

    引用为对象起了另外一个名字。例如:

    int ival=1024;

    int &relVal1=ival;//对,注意尽量不要用这方式:int& relval=ival;

    int &relVal2;//报错,引用必须被初始化

          在定义引用时,程序把引用和它的初始值绑定(binding)在一起,而不是将初始值拷贝给引用。一旦初始化完成,引用将和它的初始值对象始终绑定在一起。因为无法令引用重新绑定到另外一个对象,因此引用必须初始化。

    注意以下定义方式:

    int i=0;

    int &relVal=i, r=i;////relval是引用,r不是

    int &relVal=i, &r=i;//relval和r都是引用

    二、指针(pointer)

    今天看的指针类型主要是指针的简单定义以及使用,不涉及很难的应用,后续补充。

    三、引用和指针混用

    int i=3;

    int &r=i;

    int *p=&i;

    int *&r1=p;//r1是一个队指针p的引用

    因为引用不是一个对象,因此不能定义指向引用的指针。

    四、const关键字和reference、pointer连用

    1、

    const int i=23;

    const int &ref=i;//正确

    ref=32;//错误

    int &r1=i;//错误。试图让一个非const引用指向一个const对象会报错

    2、

    int i=234;

    const int &ref=i;//正确,允许这样

    const int &r2=24;//正确,允许这样

    const int &r3=ref*2;//正确,允许这样

    int &r4=ref*2;//错误,

    3、const和pointer(常量指针和指针常量

  • 相关阅读:
    Stl源码剖析读书笔记之Alloc细节
    Lua热更系统
    Linux C++线程池
    linux sort,uniq,cut,wc.
    (转)Linux grep
    用LogParser分析IIS请求压力
    (转)MySQL主从复制的常见拓扑、原理分析以及如何提高主从复制的效率总
    AIS相关资料
    python学习笔记
    (转)MySQL InnoDB修复笔记
  • 原文地址:https://www.cnblogs.com/LCCRNblog/p/4205775.html
Copyright © 2011-2022 走看看