AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

C++ extern的用法詳細解析

來源: 責編: 時間:2023-09-18 21:40:38 331觀看
導讀C++編程中,extern是一個非常重要的關鍵字,它的用途主要是用來聲明一個全局變量或者函數。本文將詳細解析extern的用法,并通過實例進行詳細的解釋。1. extern的基本定義在C++中,extern是一個存儲類修飾符,它告訴編譯器,其聲

C++編程中,extern是一個非常重要的關鍵字,它的用途主要是用來聲明一個全局變量或者函數。本文將詳細解析extern的用法,并通過實例進行詳細的解釋。xO928資訊網——每日最新資訊28at.com

xO928資訊網——每日最新資訊28at.com

1. extern的基本定義

在C++中,extern是一個存儲類修飾符,它告訴編譯器,其聲明的變量或者函數是在別的文件中,提示編譯器在鏈接階段從其他文件中尋找此變量或函數的定義。xO928資訊網——每日最新資訊28at.com

extern int x;  // 'x'的定義在其他文件中

這里需要注意,extern只是聲明,不是定義。也就是說,它只是告訴編譯器變量或函數的類型,而不會分配內存。xO928資訊網——每日最新資訊28at.com

2. extern的主要用途

(1) 用于鏈接外部變量

當我們在多個文件中使用同一個變量時,extern可以幫助我們實現這一目標。例如,我們有兩個文件,main.cpp和support.cpp,我們可以在support.cpp中定義一個變量,在main.cpp中通過extern關鍵字來使用這個變量。xO928資訊網——每日最新資訊28at.com

在support.cpp中:xO928資訊網——每日最新資訊28at.com

int testVar = 0;  // 定義一個全局變量

xO928資訊網——每日最新資訊28at.com

在main.cpp中:xO928資訊網——每日最新資訊28at.com

extern int testVar;  // 聲明外部變量int main() {    // 使用外部變量    testVar = 10;    return 0;}

xO928資訊網——每日最新資訊28at.com

(2) 用于鏈接外部函數

除了變量之外,extern也可以用于聲明在其他文件中定義的函數。例如,我們有兩個文件,main.cpp和support.cpp,我們可以在support.cpp中定義一個函數,在main.cpp中通過extern關鍵字來使用這個函數。xO928資訊網——每日最新資訊28at.com

在support.cpp中:xO928資訊網——每日最新資訊28at.com

// 定義一個函數void testFunc() {    // 函數體}

xO928資訊網——每日最新資訊28at.com

在main.cpp中:xO928資訊網——每日最新資訊28at.com

extern void testFunc();  // 聲明外部函數int main() {    // 調用外部函數    testFunc();    return 0;}

3. extern"C"的用法

在C++中,我們常常會看到extern "C"的用法。這是因為C++支持函數重載,而C語言不支持。當C++代碼被C語言調用時,為了避免鏈接錯誤,需要用extern "C"來告訴編譯器按照C語言的方式來鏈接。xO928資訊網——每日最新資訊28at.com

extern "C" void testFunc();  // 用C語言方式鏈接的函數

此時testFunc函數就可以被C語言代碼調用了。xO928資訊網——每日最新資訊28at.com

4. extern的注意事項

extern關鍵字聲明的變量或函數必須在某個文件中被定義,否則在鏈接階段會報錯。xO928資訊網——每日最新資訊28at.com

extern關鍵字只能用于全局變量和函數,不能用于函數內部的局部變量。xO928資訊網——每日最新資訊28at.com

總結

在C++編程中,理解并熟練掌握extern關鍵字的用法,對于我們編寫模塊化、可重用的代碼,實現跨文件的變量和函數的共享,具有重要的意義。xO928資訊網——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-10427-0.htmlC++ extern的用法詳細解析

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 【Python入門】為什么這門編程語言如此受歡迎?

下一篇: Remix 2.0 正式發布,現代化全棧Web框架!

標簽:
  • 熱門焦點
  • MIX Fold3包裝盒泄露 新機本月登場

    小米的全新折疊屏旗艦MIX Fold3將于本月發布,近日該機的真機包裝盒在網上泄露。從圖上來看,新的MIX Fold3包裝盒在外觀設計方面延續了之前的方案,變化不大,這也是目前小米旗艦
  • 6月安卓手機好評榜:魅族20 Pro蟬聯冠軍

    性能榜和性價比榜之后,我們來看最后的安卓手機好評榜,數據來源安兔兔評測,收集時間2023年6月1日至6月30日,僅限國內市場。第一名:魅族20 Pro好評率:95%5月份的時候魅族20 Pro就是
  • 在線圖片編輯器,支持PSD解析、AI摳圖等

    自從我上次分享一個人開發仿造稿定設計的圖片編輯器到現在,不知不覺已過去一年時間了,期間我經歷了裁員失業、面試找工作碰壁,寒冬下一直沒有很好地履行計劃.....這些就放在日
  • 一篇文章帶你了解 CSS 屬性選擇器

    屬性選擇器對帶有指定屬性的 HTML 元素設置樣式。可以為擁有指定屬性的 HTML 元素設置樣式,而不僅限于 class 和 id 屬性。一、了解屬性選擇器CSS屬性選擇器提供了一種簡單而
  • 這款新興工具平臺,讓你的電腦效率翻倍

    隨著信息技術的發展,我們獲取信息的渠道越來越多,但是處理信息的效率卻成為一個瓶頸。于是各種工具應運而生,都在爭相解決我們的工作效率問題。今天我要給大家介紹一款效率
  • 當家的盒馬,加速謀生

    來源 | 價值星球Planet作者 | 歸去來自己“當家”的盒馬,開始加速謀生了。據盒馬官微消息,盒馬計劃今年開放生鮮供應鏈,將其生鮮商品送往食堂。目前,盒馬在上海已經與
  • 造車兩年股價跌六成,小米的估值邏輯變了嗎?

    如果從小米官宣造車后的首個交易日起持有小米集團的股票,那么截至2023年上半年最后一個交易日,投資者將浮虧59.16%,同區間的恒生科技指數跌幅為52.78%
  • 華為將推出盤古數字人大模型 可幫助用戶12小時完成數字人生成

    在今日舉行的2023年華為云數字文娛AI創新峰會上,華為云全球Marketing與銷售服務總裁石冀琳表示,華為云將在后續推出盤古數字人大模型,可幫助用戶12小
  • 回歸OPPO兩年,一加贏了銷量,輸了品牌

    成為OPPO旗下主打性能的先鋒品牌后,一加屢創佳績。今年618期間,一加手機全渠道銷量同比增長362%,憑借一加 11、一加 Ace 2、一加 Ace 2V三款爆品,一加
Top