zoukankan      html  css  js  c++  java
  • C++(引用四)

    引用做函数返回值

    • 作用:引用可以作为函数的返回值存在

    • 注意:不要返回局部变量的引用

    • 用法:函数调用可以做左值

    示例:

    #include <iostream>
    
    using namespace std;
    
    //返回局部变量引用
    int& test01() {
    	int a = 10; //局部变量
    	return a;
    }
    
    //返回静态变量引用
    int& test02() {
    	static int a = 20;
    	return a;
    }
    
    int main() {
    
    	//不能返回局部变量的引用
    	int& ref = test01();
    	cout << "ref = " << ref << endl; //vs2017 编译器会保留一次,g++上则不能通过
    	cout << "ref = " << ref << endl; //内存已经被释放,非法操作
    
    	//如果函数做左值,那么必须返回引用
    	int& ref2 = test02();
    	cout << "ref2 = " << ref2 << endl;
    	cout << "ref2 = " << ref2 << endl;
    
    	test02() = 1000;
    
    	cout << "ref2 = " << ref2 << endl;
    	cout << "ref2 = " << ref2 << endl;
    
    	system("pause");
    
    	return 0;
    }
    
  • 相关阅读:
    python3+request接口自动化框架
    类型转换函数
    操作符重载(三)
    操作符重载(二)
    操作符重载(一)
    时间获取函数
    文件和目录
    Linux五种IO模型
    类中的函数重载
    系统调用IO和标准IO
  • 原文地址:https://www.cnblogs.com/xuelanga000/p/13548076.html
Copyright © 2011-2022 走看看