`
zhangziyangup
  • 浏览: 1078966 次
文章分类
社区版块
存档分类
最新评论

C++中函数建立临时变量的机制(const)

 
阅读更多

如果参数为const引用时,C++允许生成临时变量。在1.实参类型正确但不是左值时。2.实参类型不正确但是可以转换为正确的类型时,才生成临时变量。将函数调用的参数的值传递给该匿名变量,并让参数来引用该变量。

记住了,指针和引用都很微妙。用起来要格外当心。

分享到:
评论

相关推荐

    c++ 类中const成员变量的赋值方法

    在头文件的类的定义中定义了一个const成员变量c++ 规则: 1、类定义中不能进行初始化,因为头文件中类的定义只是一个声明,并没有分配真正空间,因此变量是不存在的,因此是不能赋值的。 2、const 定义的变量是不能...

    C++ const引用、临时变量 引用参数详解

    C++引用—临时变量、引用参数和const引用 如果实参与引用参数不匹配,C++将生成临时变量。如果引用参数是const,则编译器在下面两种情况下生成临时变量: 实参类型是正确的,但不是左值 实参类型不正确,但可以转换为...

    C++ const修饰变量和修饰函数介绍

    关于const最常见的一个面试题是这样的:char *const和const char*有什么区别,大家都知道const修饰符代表的是常量,即const修饰的变量一旦被初始化是不能被更改的,这两个类型一个代表的是指针不可变,一个代表指针...

    C++中的extern声明变量详解

    这里我们将普通数据变量和函数统称变量。从内存分配角度来说,声明和定义的区别在于声明一个变量不会分配内存,而定义一个变量会分配内存。一个变量可以被声明多次,但是只能被定义一次。 基于以上前提,我们可以把...

    C++中静态成员函数与静态成员变量(static )

    C++中静态成员函数与静态成员变量(static ) 这篇介绍了静态成员函数与静态成员变量,是我的读书笔记,我希望它够简短但又比较全面,起到复习的作用。如果有一些C++知识记不清楚了,它可以帮你很快回忆起来。 复习...

    C++中const用法总结

    文件有对const修饰普通变量、指针、函数等等的详细解释,是对c++中const用法的完整总结。

    C++的const类成员函数

    我们知道,在C++中,若一个变量声明为const类型,则试图修改该变量的值的操作都被视编译错误。例如:  const char blank = ‘’;  blank = ‘ ’; // 错误  面向对象程序设计中,为了体现封装性,通常不允许...

    C++中const用法总结.doc

    C++中const用法总结.doc C++中const用法总结.doc 1. const修饰普通变量和指针 2. const修饰函数参数 3. const 修饰函数返回值 4. const修饰类对象/对象指针/对象引用 5. const修饰成员变量 6. const修饰成员...

    C++中const用于函数重载的示例代码

    (3)常成员函数不能更新类的成员变量,也不能调用该类中没有用const修饰的成员函数,只能调用常成员函数。 (4)非常量对象也可以调用常成员函数,但是如果有重载的非常成员函数则会调用非常成员函数。 重载看例子...

    C/C++中static,const,inline三种关键字详细总结

    一、关于staticstatic 是C++中很常用的修饰符,它被用来控制变量的存储方式和可见性,下面我将从 static 修饰符的产生原因、作用谈起,全面分析static 修饰符的实质。 static 的两大作用: 一、控制存储方式 static...

    C++中的static修饰的变量和函数

    C++里的静态成员函数(不能用const的原因+static在c++中的第五种含义)  ----自 core c++  static在c++中的第五种含义:用static修饰不访问非静态数据成员的类成员函数。这意味着一个静态成员函数只能访问...

    Const资料整理

    Const,Const函数,Const变量,函数后面的Const ,Const成员函数,c++仅供参考

    C++:关于const的思考.doc

    C++:关于const的思考.doc onst的思考 1、什么是const? 常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。(当然,我们可以偷梁换柱进行更新:) 2、为什么引入const?  const...

    c++中const的使用详解

    Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。 1、定义常量(1)const修饰变量,以下两种定义形式在本质上是一样的。它的含义是:const修饰的类型...

    现代C++程序设计

    2.5 C++中的变量声明 2.5.1 C++的命名规则 2.5.2 在哪里声明变量 2.6 C++中的运算符 2.6.1 计算路程的程序 2.6.2 从键盘输入程序所需数据 2.6.3 赋值运算符 2.6.4 运算符的优先级 2.6.5 数据类型及其存储的值 2.6.6...

    C++类中的static和const用法实例教程

    static和const是C++程序设计中非常重要的概念,本文实例列举了C++类中的static和const的规则和用法。供大家参考借鉴。具体说明如下: 首先以代码用来举例说明。示例代码如下: class A { public: A():m(10) //...

    新手学习C++入门资料

    C++函数的原型中可以声明一个或多个带有默认值的参数。如果调用函数时,省略了相应的实际参数,那么编译器就会把默认值作为实际参数。可以这样来声明具有默认参数的C++函数原型: #include iostream.h void show...

    C++面试常问知识点总结

    c++常用知识点总结,包含c++基础知识、c++内存、c++面向对象、c++stl、c++ 新特性、c++操作系统、c++...C++后续版本更是发展了不少新特性,如C++11中引入了nullptr、auto变量、Lambda匿名函数、右值引用、智能指针。

Global site tag (gtag.js) - Google Analytics