1、const用於類成員變數定義,一旦定義且不能改變其值。define定義全域性常量,在任何地方都可以訪問。
2、define不能在類中定義而const可以。
3、const不能在條件語句中定義常量
if (...)
but
if (...)
4、const採用乙個普通的常量名稱,define可以採用表示式作為名稱。
const foo = 'bar';
for ($i = 0; $i < 32; ++$i)
5、const只能接受靜態的標量,而define可以採用任何表示式。
const bit_5 = 1 << 5; // invalid
but
define('bit_5', 1 << 5); // valid
6、const 總是大小寫敏感,然而define()可以通過第三個引數來定義大小寫不敏感的常量
define('foo', 'bar', true); www.2cto.com
echo foo; // bar
echo foo; // bar
總結:使用const簡單易讀,它本身是乙個語言結構,而define是乙個方法,用const定義在編譯時比define快很多。
const 與 define的使用形式比較
const 與 define的使用形式比較 7.19 include using namespace std const double pi 3.1415926 int main double mianji double r include using namespace std define pi...
define與const的區別
define 定義的其實是乙個字面常量的名字,在程式中可以把這個名字等價於字面常量使用,在編譯時會被編譯器替換為該字面常量。使用這種方式,只能達到提高程式可讀性的效果,但是安全性不能得到保證。從const 語句的語法格式可以看出,const 語句支援為常量指定型別,編譯器在編譯 時將其型別進行安全檢...
const 與 define的區別
在c程式中,const的用法主要有定義常量 修飾函式引數 修飾函式返回值等3個用處 在c 程式中,它還可以修飾函式的定義體,定義類中某個成員函式為恆態函式,即不改變類中的資料成員 1 const 有資料型別,而巨集沒有資料型別,編譯器可以對前者進行型別安全檢查,而對後者只進行字元替換,沒有型別安全檢...