为了账号安全,请及时绑定邮箱和手机立即绑定

$p不是变量么?

$p不是变量么?例题中的第2行、第10行、第12代码中将定义好的常量赋值给变量$p,可是constant()的语法又讲的是mixed constant(string constant_name),即constant(string 常量名)。最后第15行中却又写的是constant(变量$p)*$r*$r,又是为什么啊?有点晕了。

正在回答

2 回答

首先你要知道,等于号 = 的含义是 将左边的值赋给右边。第2,10,12 行,由于p是一个变量,所以进行的是三次赋值;而constant()函数的string类型参数是一个常量名,是名,不是常量,$p里面是一个值,而这个值就对应的是常量的名字,所以可以通过调用上述定义的常量。这节就是讲常量的两种取值,第二种是一个多态性质,就是取值是动态的,第一种是静态的,主要应该是阐述这个区别。我也是新手,不足地方批评指正。

1 回复 有任何疑惑可以回复我~
#1

从0到1学编程 提问者

好的,谢谢。其实问题就是纠结在constant()这个函数的括号中为什么要放进变量$p,按理说应该放入的是常量才对。
2015-05-01 回复 有任何疑惑可以回复我~
#2

刘小骏 回复 从0到1学编程 提问者

还没懂么?constant() 传入的是constant_name,字面意思叫常量名,就是一个string类型的数据就ok,再说这里就是传值,相当于把参数赋值一个副本,然后传进去,跟原来的变量有关系,但是也不大,所以你干嘛要纠结什么常量呢。
2015-05-01 回复 有任何疑惑可以回复我~
#3

chenhongjian 回复 刘小骏

我想了半天,是右边赋值给左边吧
2015-08-16 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

$p不是变量么?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信