C++關(guān)于引用作為函數(shù)的用法
介紹
引用是C++中特有的語法,在C語言中不存在。
本質(zhì)上引用(reference)就是指針,在類型名后面加上一個(gè)&號(hào)就是引用類型。
1.指針與引用的定義進(jìn)行比較
指針定義: 引用定義:
int a = 123; int a =123;
int* p = &a; int& r = a;
稱作:p指向了變量a 稱作:r是變量a的引用或r引用了目標(biāo)對(duì)象a
2.引用可以看作是目標(biāo)對(duì)象的一個(gè)別名,對(duì)引用的操作其實(shí)都是對(duì)目標(biāo)對(duì)象的操作。
3.引用必須在定義時(shí)初始化,也就是一創(chuàng)建就要與目標(biāo)對(duì)象綁定。
int a = 124; int &r; //語法錯(cuò),必須初始化
引用作為函數(shù)參數(shù)
#include <stdio.h>
int add(int& a, int& b)
{
return a + b;
}
int main()
{
int a = 1, b = 2;
printf("%d\n", add(a, b));
return 1;
}
引用作為函數(shù)的返回值
#include <stdio.h>
#include <string.h>
struct Student
{
char name[32];
int age;
};
Student stu;
Student& fun()
{
strcpy(stu.name, "aaa");
stu.age = 30;
return stu;
}
int main()
{
Student& stu = fun();
printf("name = %s, age = %d\n", stu.name, stu.age);
return 1;
}
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
C語言報(bào)錯(cuò):Buffer Overflow的原因和解決辦法
Buffer Overflow是C語言中常見且危險(xiǎn)的內(nèi)存錯(cuò)誤之一,它通常在程序試圖向緩沖區(qū)(如數(shù)組或內(nèi)存塊)寫入超過其容量的數(shù)據(jù)時(shí)發(fā)生,本文將詳細(xì)介紹Buffer Overflow的產(chǎn)生原因,提供多種解決方案,需要的朋友可以參考下2024-07-07
C++可執(zhí)行文件絕對(duì)路徑值與VS安全檢查詳解
這篇文章主要給大家介紹了關(guān)于C++可執(zhí)行文件絕對(duì)路徑值與VS安全檢查的相關(guān)資料,文中通過圖文以及實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用C++具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-01-01
C++實(shí)現(xiàn)正態(tài)隨機(jī)分布的方法
wxWidgets實(shí)現(xiàn)無標(biāo)題欄窗口拖動(dòng)效果

