我嘗試編譯下面的代碼:未申報的場編譯尼姆羅德程序
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)
,但我得到了以下錯誤:
Error: undeclared field: 'id'
如何id
沒有申報?代碼示例直接來自教程。語言變化中沒有反映在教程中的東西?
另外,如果我嘗試運行下面的代碼:
student = TStudent(name: "Anton")
echo student.name
我得到以下錯誤:
SIGSEGV: Illegal storage access. (Attempt to read from nil?)
爲什麼?
在[nimrod論壇](http://forum.nimrod-code.org/t/285)上發現有人遇到同樣的問題, – sloth