有三个结构体
TTestprogram=record
pinArray: array of TPin;
InstrArray: array of TInstruction;
function getInstr(InstrID:integer):TInstruction; //从InstrArray里找出ID号为InstrID的一个Instr
function getPin(PinID:integer):TPin; //从pinArray里找出ID号为PinID的一个pin
end;TInstruction=record
InstrID: integer;
FromPin: TPin;
ToPin: TPin;
end;TPin=record
pinID: integer;
InstrNum: integer;
procedure changeInstrNum(num: integer);
end;现在定义:var
mytest:TTestProgram;
InstrID:integer;
做了一些初始化的工作后,mytest里的东西就有了内容,接着为了使得某个Instruction的FromPin的InstrNum变成25,我调用了以下的语句:
mytest.getPin(mytest.getInstr(InstrID).FromPin.pinID).changeInstrNum(25);但是事实是这个Pin的InstrNum并没有变化,请问我这样的调用对吗?
TTestprogram=record
pinArray: array of TPin;
InstrArray: array of TInstruction;
function getInstr(InstrID:integer):TInstruction; //从InstrArray里找出ID号为InstrID的一个Instr
function getPin(PinID:integer):TPin; //从pinArray里找出ID号为PinID的一个pin
end;TInstruction=record
InstrID: integer;
FromPin: TPin;
ToPin: TPin;
end;TPin=record
pinID: integer;
InstrNum: integer;
procedure changeInstrNum(num: integer);
end;现在定义:var
mytest:TTestProgram;
InstrID:integer;
做了一些初始化的工作后,mytest里的东西就有了内容,接着为了使得某个Instruction的FromPin的InstrNum变成25,我调用了以下的语句:
mytest.getPin(mytest.getInstr(InstrID).FromPin.pinID).changeInstrNum(25);但是事实是这个Pin的InstrNum并没有变化,请问我这样的调用对吗?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货