0
Uses Graph;
Const Triangle : Array [1..3] Of PointType =
((X: 50; Y: 100),
(X: 100; Y: 100),
(X: 150; Y: 50));
Var Gd, Gm : smallint;
Begin
Gd:=Detect;
InitGraph(Gd, Gm, ''); 
If GraphResult <> grOk Then Halt(1);
SetFillStyle(7,0);
SetColor(14);
FillPoly(SizeOf(Triangle) Div SizeOf(PointType), Triangle);
ReadLn;
CloseGraph;
End.

我希望能够为三角形输入一个值,以便用户可以将其移动,但它是一个常量,因此除非有办法将其转换为变量,否则这是不可能的。

4

1 回答 1

1

对于 FreePascal:

只需将“const”替换为“var”即可。您可以初始化全局变量,甚至像这样的复杂变量,通过这种方式,变量将在程序开始时采用该值,直到您更改它。

对于涡轮帕斯卡:

常量数组并不是真正的常量,您可以随意修改它们。例如,您可以这样做:

Triangle[1].X := 500;

在程序开始时,它会工作得很好。有关更多详细信息,请参阅此相关问题

于 2012-12-11T21:50:30.607 回答