次のコードをコンパイルしようとします。
type
TPerson = object of TObject
name*: string
age: int
TStudent = object of TPerson
id: int
var
student: TStudent
person: TPerson
student = TStudent(name: "Anton", age: 5, id: 2)
しかし、次のエラーが表示されます。
エラー: 宣言されていないフィールド: 'id'
どのようにid
宣言されていませんか?コード サンプルは、チュートリアルから直接引用したものです。チュートリアルに反映されていない言語の変更はありましたか?
また、次のコードを実行しようとすると:
student = TStudent(name: "Anton")
echo student.name
次のエラーが表示されます。
SIGSEGV: 不正なストレージ アクセスです。(nil から読み取ろうとしていますか?)
なんで?