引用

其实是指针常量

int a = 10;
int &ref = a;

引用必须初始化

引用参数

void modifyValue(int &val) {
    val *= 2;
}

int main() {
    int num = 5;
    modifyValue(num);
    // 此时 num 的值变为 10
    return 0;
}

引用返回值

int& findMax(int &a, int &b) {
    return (a > b) ? a : b;
}

int main() {
    int x = 10, y = 15;
    int &result = findMax(x, y);
    result = 100; // 修改 x 或 y 的值
    return 0;
}

示例

#include <iostream>

// 函数参数为引用,修改原始值
void modifyValue(int &val) {
    val *= 2;
}

// 函数返回引用,返回较大的数
int& findMax(int &a, int &b) {
    return (a > b) ? a : b;
}

int main() {
    int num = 5;
    std::cout << "Original value: " << num << std::endl;

    // 使用引用修改原始值
    modifyValue(num);
    std::cout << "After modifyValue: " << num << std::endl;

    int x = 10, y = 15;
    int &result = findMax(x, y);
    result = 100; // 修改 x 或 y 的值
    std::cout << "Updated value of x or y: " << result << std::endl;

    return 0;
}
Original value: 5
After modifyValue: 10
Updated value of x or y: 100

常量引用

因为引用本身其实是指针,传参必须是变量。加上const就是解决可以传常量

// 函数参数为引用,修改原始值
void modifyValue(const int &val) {
    val *= 2;
}
int main() {
    modifyValue(5);
}
c++

动态内存分配

2023-8-8 0:19:31

c++

函数参数传参定义规范

2023-8-8 11:18:57

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索