当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

编程之美

发表于: 2012-12-04   作者:dcj3sjt126com   来源:转载   浏览:
摘要: 我个人的 PHP 编程经验中,递归调用常常与静态变量使用。静态变量的含义可以参考 PHP 手册。希望下面的代码,会更有利于对递归以及静态变量的理解   header("Content-type: text/plain"); function static_function () { static $i = 0; if ($i++ < 1

我个人的 PHP 编程经验中,递归调用常常与静态变量使用。静态变量的含义可以参考 PHP 手册。希望下面的代码,会更有利于对递归以及静态变量的理解

 

header("Content-type: text/plain");
function static_function () {
    static $i = 0;
    if ($i++ < 10) {
        echo $i . "\n";
        static_function();
    }
}

 static_function();这段代码会如数输出 1 到 10 的数字。在 static_function 函数第二次运行时,变量 i 由于是静态变量,所以仍被保留不被释放,进而可以得到自增的值。

 

 

这个问题不单单出现在PHP中,你可以在其他语言的代码中经常看到: 
差:for($i=0;$i<count($array);$i++){...} 
好:$count=count($array);for($i=0;$i<$count;$i++){...} 
  这因该很好解释,但许多人就是想少写一行代码而浪费了系统资源。如果在循环声明中使用了count函数,那每次循环都会调用一次。如果你的循环次数很多,那就会浪费非常多的时间。

 

用预定义长量代替没有意义的数字

 

defined ("GREAT_THAN_MAX",1);
defined("NORMAL",0);
defined("LESS_THAN_MIN",-1);

switch($type){
	case GREAT_THAN_MAX:
		...
		break;
	case NORMAL:
		...
		break;
	case LESS_THAN_MIN:
		...
		break;
	default:
		doSomething();
		break;
}

编程之美

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
3、题目:能否快速找出一个数组(简单起见,数组中元素值各不一样)中的两个数字,让这两个数字之和
今天开始看编程之美 。第一个问题是CPU的使用率控制,微软的问题果然高大上,我一看就傻了,啥也不
第一章 软件架构是什么 软件架构应该... asoftware architect that the system should be friendly
给定一个前序和中序变量的结果,写一个算法重建这棵树:如: 前序: a b d c e f 中序: d b a e c f
还好看到了,这个以前好早见到过。 用得是辗转相除法。 k =x/y b=x%y 则 x = ky+b 如果一个整数能够
题目:编写一个函数,把一个char组成的字符串循环右移n位。例如:原来是”abcdefghi”,如果n = 2,
Windows中有一项功能,是可以在任务管理器中查看CPU的使用率,管理器以图形使用率在不同的时间点的
一 年又很快过去了,今年从之前的设计师转型到Android程序员。期间也经历了许多的坎坎坷坷,从一个
编程之美:平面最近点对 一.概念引入 最接近点对问题的提法是:给定平面上n个点,找其中的一对点,使
《 编程之美》中有个关于逐层遍历二叉树的算法: /// <summary> /// 结点类 /// </summary
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号