【C++】从代码示例入手(三)常量、静态变量、引用变量、命名空间(二)

  《C++从代码示例入手》系列文章将带你开启 C++编程的探索之旅。通过大量简单且实用的代码示例,由浅入深地展现 C++的核心知识点,包括变量、数据类型、运算符、控制结构、函数等。每一个代码示例都有详细的解释和注释,让你能轻松理解代码的功能和运行原理,助你逐步掌握 C++的编程技巧,快速提升编程能力,为后续深入学习和开发打下坚实基础。 

 关于IDE开发工具的运行环境安装配置,请参看:【C 语言】从代码示例入手(零)

        各位朋友在学习C++之前最好可以先学习一下C语言的基础知识,因为C语言和C++还可以混合编程,语法也类似一些,最重要的是指针内存方面的知识还是需要知道一些的。

具体可以参看:【C 语言】从代码示例入手 


目录

七、引用变量

1、引用语法

 2、引用注意事项

3、引用做函数参数

4、引用做为函数返回值

(1)不要返回局部变量的引用

 (2)如果函数的返回值是引用,这个函数调用可以作为左值

 5、引用的本质

八、在namespace命名空间中定义

1、在命名空间中定义变量并访问

2、在命名空间中定义函数

九、函数定义与调用

十、二维数组

十一、解决有堆变量时的浅拷贝问题

1、浅拷贝和深拷贝有什么区别?

(1)浅拷贝

 (2)深拷贝

2、浅拷贝和深拷贝的使用场景


七、引用变量

1、引用语法

格式:数据类型 &别名 = 原名

 示例:

源码:

#include <iostream>
using namespace std;
/**
 * 引用就是给变量标记了个快捷方式,本质都是指向一块内存
 */
int main() {
    int a = 10;
    int &b = a; //将a值 赋值给 引用变量b
    cout << "a=" << a << endl;
    cout << "b=" << b << endl;
    b = 100; //直接给引用变量b赋值,赋值后原变量与引用变量值一致
    cout << "a=" << a << endl;
    cout << "b=" << b << endl;
    system("pause");
    return 0;
}

运行结果:

 2、引用注意事项

  • 引用必须初始化

  • 引用在初始化后,不可以改变

示例:

源码:

#include <iostream>
using namespace std;

/**
 * 引用就是给变量标记了个快捷方式,本质都是指向一块内存
 */
int main() {
    int a = 10;
    int b = 20;
    //int &c; //错误,引用必须初始化
    int &c = a; //一旦初始化后,就不可以更变
    c = b; //这是赋值操作,不是更改引用
    cout << "a=" << a << endl;
    cout << "b=" << b << endl;
    cout << "c=" << c << endl;
    system("pause");
    return 0;
}

运行结果:

3、引用做函数参数

  • 作用:函数传参时,可以利用引用的技术让形参修饰实参
  • 优点:可以简化指针修改实参

 示例:

源码:

#include <iostream>
using namespace std;

//交换函数 1、值传递
void mySwap01(int a,int b){
    int tmp = a;
    a=b;
    b=tmp;
    cout<<"1、值传递 swap01 a="<< a << endl;
    cout<<"1、值传递 swap01 b="<< b << endl;
}

//交换函数 2、地址传递
void mySwap02(int *a,int *b){
    int tmp = *a;
    *a=*b;
    *b=tmp;
    cout<<"2、地址传递 swap02 a="<< *a << endl;
    cout<<"2、地址传递 swap02 b="<< *b << endl;
}

//交换函数 3、引用传递, 引用==别名==快捷方式,本质是指向同一块内存
void mySwap03(int &a,int &b){
    int tmp = a;
    a=b;
    b=tmp;
    cout<<"3、引用传递 swap03 a="<< a << endl;
    cout<<"3、引用传递 swap03 b="<< b << endl;
}

int mai
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

超越超

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值