首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

Undeclared identifier: 有关问题

2012-08-14 
Undeclared identifier: 问题unit untClassTeacherinterfacetypeTTeacherclassName:string//姓名Sex:Bo

Undeclared identifier: 问题
unit untClassTeacher;

interface

type
  TTeacher=class
  Name:string; //姓名
  Sex:Boolean; //性别
  Birthday:TDate; //出生日期
  TeachPost:string; //职称
  function Talk:string;
end;

implementation

{ TTeacher }

function TTeacher.Talk: string;
begin
  Result:='I am a teacher';
end;

end.



unit untClassStudent;

interface

type
  TStudent=class
  Name:string; //姓名
  Sex:Boolean; //性别
  Birthday:TDate; //出生日期
  function Talk:string;
end;

implementation

{ TStudent }

function TStudent.Talk: string;
begin
  Result:='I am learning programing.';
end;

end.


unit MainForm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
  lbTeacher: TListBox;
  lbStudent: TListBox;
  btnTeacher: TButton;
  btnStudent: TButton;
  procedure btnTeacherClick(Sender: TObject);
  procedure btnStudentClick(Sender: TObject);
  private
  { Private declarations }
  public
  { Public declarations }
  end;

var
  Form1: TForm1;
  ATeacher:TTeacher;
  AStudent:TStudent;

implementation

uses untClassStudent, untClassTeacher;

{$R *.dfm}

procedure TForm1.btnTeacherClick(Sender: TObject);
begin
  ATeacher:=TTeacher.Create; //创建对象实例
  lbTeacher.Items.Add('教师姓名:'+ATeacher.Name); //显示ATeacher变量的Name域
  if ATeacher.Sex then
  lbTeacher.Items.Add('布尔字段值为True')
  else
  lbTeacher.Items.Add('布尔字段值为False');
  lbTeacher.Items.Add('教师生日:'+DateToStr(ATeacher.Birthday));
  lbTeacher.Items.Add('教师职称:'+ATeacher.TeachPost);
  lbTeacher.Items.Add(ATeacher.Talk)
  lbTeacher.Items.Add('类变量所分配的存储字节数:'+IntToStr(SizeOf(ATeacher)));
  lbTeacher.Items.Add('类实例所分配的存储字节数:'+IntToStr(TTeacher.InstanceSize)));
  ATeacher.Free; //释放对象实例
end;

procedure TForm1.btnStudentClick(Sender: TObject);
begin
  AStudent:=TStudent.Create; //创建对象实例
  AStudent.Name:='李大江';
  AStudent.Sex:=True;
  AStudent.Birthday:=EncodeDate(1986,2,18);
  lbStudent.Items.Add('学生姓名:'+AStudent.Name); //显示ATeacher变量的Name域
  if AStudent.Sex then
  lbStudent.Items.Add('男')
  else
  lbStudent.Items.Add('女');
  lbStudent.Items.Add('学生生日:'+DateToStr(AStudent.Birthday));
  lbStudent.Items.Add(AStudent.Talk)
  lbStudent.Items.Add('类变量所分配的存储字节数:'+IntToStr(SizeOf(AStudent)));
  lbStudent.Items.Add('类实例所分配的存储字节数:'+IntToStr(TStudent.InstanceSize)));
  AStudent.Free; //释放对象实例
end;

end.
我的所有程序。下面是提示的错误
[Error] MainForm.pas(25): Undeclared identifier: 'TTeacher'
[Error] MainForm.pas(26): Undeclared identifier: 'TStudent'
[Error] untClassStudent.pas(9): Undeclared identifier: 'TDate'
[Fatal Error] MainForm.pas(30): Could not compile used unit '..\简单范例\Exa03-02\untClassStudent.pas'


[解决办法]

探讨
出现新的错误:
[Error] untClassStudent.pas(6): Identifier redeclared: 'System'

[解决办法]
Undeclared、redeclared 这些单词不难啊啊,自己试着排错啊

热点排行