搜尋
首頁常見問題全域變數的定義不可能在

全域變數的定義不可能在

Jul 27, 2019 am 09:19 AM
全域變數

全域變數是程式設計術語中的一種,源自於變數之分。

全域變數的定義不可能在

變數分為局部與全域,局部變數又可稱之為內部變數。由某個物件或某個函數所建立的變數通常都是局部變量,只能被內部引用,而無法被其它物件或函數引用。 (推薦學習:PHP影片教學

全域變數的定義不可能在函數內部,因為在函數內部建立的變數叫做局部變數。 全域變數既可以是某物件函數創建,也可以是在本程式任何地方創建。全域變數是可以被本程式所有物件或函數引用。

全域變數的存在主要有以下一些原因:

#1,使用全域變數會佔用更多的記憶體(因為其生命期長),不過在電腦配置很高的今天,這個不應該算什麼問題,除非使用的是巨大物件的全域變量,能避免就一定要避免。

2,使用全域變數程式運行時速度更快一些(因為記憶體不需要再分配),同樣也快不了多少。

3,對於局部變數的名字空間污染,這個在不使用太多變數時是可以避免的。

4,當全域變數與局部變數重名的時候,起作用的是局部變量,全域變數被屏蔽掉。

5,也可以用extern在函數外對全域變數聲明,讓全域變數的作用域從宣告到檔案的結束。

6,全域變數的優先權低於局部變數。

總之,全域變數可以使用,但是全域變數使用時應注意的是盡可能使其名字易於理解,而且不能太短,避免名字空間的污染;避免使用巨大物件的全域變數。

在現代的物件導向語言如Java,C ,C#,Ruby中,由於變數都是封裝在類別裡面的,對別的類別不可見,所以已經幾乎完全拋棄了全域變數的概念。

然而,可以把一個類別定義為public static,把類別成員變數也定義為public static,使該變數在記憶體中佔用固定、唯一的一塊空間,來實現全域變數的功能。

更多PHP相關技術文章,請造訪PHP圖文教學欄位進行學習!

以上是全域變數的定義不可能在的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器