zoukankan      html  css  js  c++  java
  • const define区别

    可以使用defined()----检测常量是否设置

    【问】在php中定义常量时,const与define的区别? 

    【答】使用const使得代码简单易读,const本身就是一个语言结构,而define是一个函数。另外const在编译时要比define快很多。

    (1).const用于类成员变量的定义,一经定义,不可修改。define不可用于类成员变量的定义,可用于全局常量。

    (2).const可在类中使用,define不能。

    (3).const不能在条件语句中定义常量。

    例如: 

    if (...){ 

      const FOO = 'BAR';  // 无效的invalid 

    }  

    if (...) { 

      define('FOO', 'BAR'); // 有效的valid 

    }

    (4).const采用一个普通的常量名称,define可以采用表达式作为名称。 

     const  FOO = 'BAR';  

     for ($i = 0; $i < 32; ++$i) { 

      define('BIT_' . $i, 1 << $i); 

    }

    (5).const只能接受静态的标量,而define可以采用任何表达式。

    例如: 

    const BIT_5 = 1 << 5;  // 无效的invalid  

    define('BIT_5', 1 << 5); // 有效的valid

    (6).const定义的常量时大小写敏感的,而define可通过第三个参数(为true表示大小写不敏感)来指定大小写是否敏感。

    例如:

    define('FOO', 'BAR', true);  

    echo FOO; // BAR 

    echo foo; // BAR

  • 相关阅读:
    [NOI2007]生成树计数
    [NOI2009]变换序列
    BZOJ3261 最大异或和
    [SHOI2011]双倍回文
    [TopCoder14647]HiddenRabbits
    [HDU5709]Claris Loves Painting
    [BZOJ4559][JLOI2016]成绩比较
    [CF995F]Cowmpany Cowmpensation
    [TopCoder11557]MatrixPower
    [UOJ198][CTSC2016]时空旅行
  • 原文地址:https://www.cnblogs.com/sz-xioabai/p/6603286.html
Copyright © 2011-2022 走看看