我有一个非常严酷的课程。
unit StuffClass;
{$mode objfpc}{$H+}
interface
type
TStuffClass = class
public
procedure Update;
end;
implementation
procedure TStuffClass.Update;
begin
end;
end.
创建它的一个实例,并调用它的Update
过程会导致程序 SIGSEGV..
什么..?它完全没有做任何事情。
我正在使用 Freepascal (& Lazarus) 32 位版本。
为什么这样做?
编辑:这是调用位:
//Creating it
constructor TEngine.Create(TV: pSDL_Surface);
begin
Self.TV := TV;
Self.StuffClass.Create;
end;
function TEngine.Update: Boolean;
begin
WriteLN('Test');
SDL_PumpEvents;
Self.StuffClass.Update; //Crashes here.
Update := True;
end;