首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >致命错误:调用非对象上的成员函数display()

致命错误:调用非对象上的成员函数display()
EN

Stack Overflow用户
提问于 2013-06-03 05:57:42
回答 1查看 3K关注 0票数 0

这是我用来创建数据元素列表的代码!在下面提到的这一行中有两个错误(在同一行上)

1)注意:未定义的偏移量:0 2)致命错误:在非对象上调用成员函数display()

代码语言:javascript
运行
复制
  <?php
  class data
  {
     public $num;
     public $Char;


    function __construct()
    {
      $this->num= "null";
      $this->Char= "New Char";    
    }

    public function setInt($int)
    {
      $this->num=$int;
    }

    public function setChar($char)
    {
      $this->Char= $char;
    }


    public function getInt()
    {
      return $this->num;
    }

    public function getChar()
    {
     return $this->Char;
    }

    public function display()
    {
      echo $this->num;
      echo $this->Char;
    }
  }

  class linklist extends data 
  {
    public $DATA;
    private $list;
    private $count;

    function __construct()
    {
      $DATA= new data();
      $list= array();
      $count=0;
    }

    function addData(data $d)
    {
       $this->list[$this->count]= $d;

     $this-> count++;
    }   

    function displayy()
    {
        $d= new data();
        $i=0;
      for($i;$i<=$this->count; $i++)
      {
        $this->list[$i]->display();   //** line with error *** //
      }

    }
  }




?>




<!DOCTYPE html>
<html>
<body>
<?php
   $d= new data();

     //$d->display();

     //$Name= $_POST['fname'];
     //$Age = $_POST['age']; 


     $d->setInt("1");    
     $d->setChar("Ashad");   

     //$d->display();

     $d1= new Data();

     $d1->setInt("2");   
     $d1->setChar("shahrukh");   

     $list = new linklist();

     $list-> addData($d);
     $list->addData($d1);


    $list->displayy();


?>  
</body>
</html>
EN

Stack Overflow用户

回答已采纳

发布于 2013-06-03 06:05:14

linklist的构造函数应该是:

代码语言:javascript
运行
复制
function __construct()
{
  $this->DATA= new data();
  $this->list= array();
  $this->count=0;
}

你错过了$this

还请注意@N.B的评论:

代码语言:javascript
运行
复制
for($i; $i <= $this->count; $i++)

应该是

代码语言:javascript
运行
复制
for($i = 0; $i < $this->count; $i++)
票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16887713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档