什么情况下可以用overload?
参数类型不同: 可以, 参数个数不同: 可以, 变参与形参: 不可以. 我说的对吗?
shortint和longint间算是类型不同吗? 如果算那又如何区别呢? 我定义了如下两个overload过程:procedure TForm1.test(ANum: single);
begin
showmessage('single');
end;procedure TForm1.test(ANum: extended);
begin
showmessage('extended');
end;procedure TForm1.Button1Click(Sender: TObject);
begin
test(3.9);
end;---------------------------------------------------procedure TForm1.test(ANum: double);
begin
showmessage('double');
end;procedure TForm1.test(ANum: extended);
begin
showmessage('extended');
end;procedure TForm1.Button1Click(Sender: TObject);
begin
test(3.9);
end;为什么结果总是extended?
参数类型不同: 可以, 参数个数不同: 可以, 变参与形参: 不可以. 我说的对吗?
shortint和longint间算是类型不同吗? 如果算那又如何区别呢? 我定义了如下两个overload过程:procedure TForm1.test(ANum: single);
begin
showmessage('single');
end;procedure TForm1.test(ANum: extended);
begin
showmessage('extended');
end;procedure TForm1.Button1Click(Sender: TObject);
begin
test(3.9);
end;---------------------------------------------------procedure TForm1.test(ANum: double);
begin
showmessage('double');
end;procedure TForm1.test(ANum: extended);
begin
showmessage('extended');
end;procedure TForm1.Button1Click(Sender: TObject);
begin
test(3.9);
end;为什么结果总是extended?
begin
showmessage('integer');
end;procedure TForm1.test(ANum: string);
begin
showmessage('string');
end;procedure TForm1.Button1Click(Sender: TObject);
begin
test(3);
end;
//这样就明显了。
//楼主的例子有问题。
override是有继承关系的重载