C++關(guān)于引用作為函數(shù)的用法
介紹
引用是C++中特有的語(yǔ)法,在C語(yǔ)言中不存在。
本質(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; //語(yǔ)法錯(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é)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
C語(yǔ)言報(bào)錯(cuò):Buffer Overflow的原因和解決辦法
Buffer Overflow是C語(yǔ)言中常見(jiàn)且危險(xiǎn)的內(nèi)存錯(cuò)誤之一,它通常在程序試圖向緩沖區(qū)(如數(shù)組或內(nèi)存塊)寫(xiě)入超過(guò)其容量的數(shù)據(jù)時(shí)發(fā)生,本文將詳細(xì)介紹Buffer Overflow的產(chǎn)生原因,提供多種解決方案,需要的朋友可以參考下2024-07-07C++可執(zhí)行文件絕對(duì)路徑值與VS安全檢查詳解
這篇文章主要給大家介紹了關(guān)于C++可執(zhí)行文件絕對(duì)路徑值與VS安全檢查的相關(guān)資料,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用C++具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-01-01

C++實(shí)現(xiàn)正態(tài)隨機(jī)分布的方法

wxWidgets實(shí)現(xiàn)無(wú)標(biāo)題欄窗口拖動(dòng)效果