c++作用域運(yùn)算符用法(全局變量和局部變量)
通常情況下,如果有兩個(gè)同名變量,一個(gè)是全局變量,另一個(gè)是局部變量,那么局部變量在其作用域內(nèi)具有較高的優(yōu)先權(quán),它將屏蔽全局變量。
作用域運(yùn)算符
#include<iostream>
using namespace std;
int num=10;
int main()
{ int num;
num=25;
cout<<"num is "<<num<<endl;
return 0;
}
程序的輸出結(jié)果是num is 25。在main函數(shù)的輸出語句中,使用的變量num是main函數(shù)內(nèi)定義的局部變量,因此輸出的結(jié)果為局部變量num的值。
作用域運(yùn)算符可以用來解決局部變量與全局變量的重名問題
//如果我們希望在局部變量的作用域內(nèi)使用同名的全局變量,那么可以在該變量的前面加上“::”,此時(shí)“::num”就代表全局變量,::就是作用域運(yùn)算符。
#include<iostream>
using namespace std;
int avar; //全局變量定義
int main()
{ int avar; //局部變量定義
avar=25;
::avar=10;
cout<<"local avar = "<<avar<<endl;
cout<<"global avar = "<<::avar<<endl;
return 0;
}
結(jié)果是:
local avar =25
global avar =10
這個(gè)例子可以看出,作用域運(yùn)算符可以用來解決局部變量與全局變量的重名問題,即在局部變量的作用域內(nèi),可用::對被屏蔽的同名的全局變量進(jìn)行訪問。
相關(guān)文章
總結(jié)了24個(gè)C++的大坑,你能躲過幾個(gè)
這篇文章主要介紹了總結(jié)了24個(gè)C++的大坑,你能躲過幾個(gè),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2021-05-05
深入學(xué)習(xí)C++智能指針之shared_ptr與右值引用的方法
智能指針的核心實(shí)現(xiàn)技術(shù)是引用計(jì)數(shù),每使用它一次,內(nèi)部引用計(jì)數(shù)加1,每析構(gòu)一次內(nèi)部的引用計(jì)數(shù)減1,減為0時(shí),刪除所指向的堆內(nèi)存,今天通過本文給大家分享C++智能指針之shared_ptr與右值引用的方法,需要的朋友跟隨小編一起看看吧2021-07-07
C++中rapidjson將map轉(zhuǎn)為json的方法
今天小編就為大家分享一篇關(guān)于C++中rapidjson將map轉(zhuǎn)為json的方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-04-04

