Rudaí & Creatlacha

I rith an teagaisc seo chonaiceamar téarmaí a úsáideann an tsiombail @. Chonaiceamar:

dath@stáitse('dearg')
ciorcal@stáitse(200, 200, 100)

Tar éis an chuid seo den teagaisc tuigfidh tú cad atá ag tarlú nuair a úsáidimid @.

Rudaí

Is grúpa gníomhartha agus luachanna é “rud”. Mar shampla, tá na gníomhartha dath agus ciorcal a chonaiceamar roimhe seo isteach sa rud stáitse.

Úsáideann tú an siombail @ chun ball de rud a fháil. Scríobhaimid dath@stáitse chun an gníomh a fháil agus ansin glaoimid ar an ngníomh le dath@stáitse('dearg').

Freisin tá rud le ainm mata ag Setanta. Tá na gníomhartha matamaiticiúil sin, cos, tan etc. ag mata. Mar an gcéanna tá na luachanna pi agus e ag mata freisin. Bain úsáid as iad le pi@mata agus e@mata.

sin@mata(2*pi@mata) == 0

Is gnáth luachanna iad stáitse agus mata freisin, is féidir leat iad a cuir isteach in athróga nó bain úsáid as iad le gníomhartha:

s := stáitse
ciorcal@s(300, 300, 250)

Stáitse Athróg

Creatlach

Is cur síos iomlán de rud é creatlach. Cruthaímid creatlach chun an struchtúr de rud a leag amach. Ansin is féidir linn an rud a cruthú.

Chun creatlach a cruthú bainimid úsáid as an focal creatlach.

Féach ar an gcód seo a leanas:

creatlach  {
    gníomh labhair() {
        scríobh('Moo')
    }
}

Chruthaíomar creatlach nua leis an ainm . Tá gníomh amháin ag , an gníomh labhair. Ní dhéanann labhair aon rud ach ‘Moo’ a scríobh amach ar an gconsól.

Tabhair faoi deara nach rud é , ach creatlach. Is féidir linn an rud a cruthú le Bó().

creatlach  {
    gníomh labhair() {
        scríobh('Moo')
    }
}

 := ()

>-- Is rud é bó anois, leis an gníomh "labhair"

labhair@()

Cuir é sin isteach san eagarthóir agus ban triail as. Cruthaigh cúpla gníomhartha eile nó creatlach eile ar bith!

Ag athrú rudaí

Tá cuimhne ag rudaí freisin, táimid in ann luachanna a stóráil i rudaí le =.

>-- Creatlach gan aon gníomhartha
creatlach RudFolamh {
}

>-- Cruthaigh rud nua
rud := RudFolamh()

>-- Cuir 'Sara' i ainm@rud
ainm@rud = 'Sara'

scríobh(ainm@rud) >-- Scríobhann sé seo 'Sara'
  • Ar dtús cruthaímid creatlach gan aon gníomhartha. Tugaimid RudFolamh air.
  • Ansin clóscríobhaimid rud := RudFolamh() chun rud a dhéanamh ón gcreatlach RudFolamh.
  • Bainimid úsáid as an tsiombail @ chun ‘Sara’ a chuir sa ball ainm leis an líne ainm@rud = 'Sara'.
  • Ansin nuair a glaoimid scríobh ar ainm@rud, scríobhann sé amach ‘Sara’ ar an gconsól.

Chun an lánchumhacht na creatlaí a fheiceáil, caithfimid caint faoi an focal seo.

An focal “seo”

Bá mhaith linn rud a athrú leis na gníomhartha atá isteach i gcreatlach an ruda. Bainimid úsáid as an focal seo chun é sin a dhéanamh. Féach ar seo mar shampla:

creatlach Duine {

    gníomh athraighAinm(ainm) {
        ainm@seo = ainm
    }

    gníomh labhair() {
        scríobh('Dia duit, is mise ' + ainm@seo)
    }
}

mise := Duine()
athraighAinm@mise('Eoin')

labhair@mise()

Agus anois féach ar an gconsól:

Dia duit, is mise Eoin

Bhaineamar úsáid as an focal seo isteach sa ghníomh athraighAinm agus sa ghníomh labhair.

Chruthaíomar rud nua le Duine() agus chuireamar é san athróg mise. Ansin d’úsáideamar athraighAinm@mise('Eoin') chun ainm an duine a athrú go ‘Eoin’.

Nuair a ghlaomar ar labhair le labhair@mise(), scríobh sé ‘Dia duit, is mise Eoin’ amach ar an gconsól.

Táimid in ann an creatlach chéanna a úsáid arís is arís chun a lán rudaí a cruthú.

An gníomh “nua”

Cruthóimid creatlach do dhuine anois. Chun an ainm, aois agus seoladh a stóráil, tá gá dúinn a lán gníomhartha a cruthú:

creatlach Duine {
    gníomh athraighAinm(ainm) {
        ainm@seo = ainm
    }
    gníomh athraighAois(aois) {
        aois@seo = aois
    }
    gníomh athraighSeoladh(seoladh) {
        seoladh@seo = seoladh
    }
    gníomh labhair() {
        scríobh('Dia duit, Is mise', ainm@seo)
        scríobh('Tá mé', aois@seo, 'd\'aois')
        scríobh('Tá mé i mo chónaí i', seoladh@seo)
    }
}

Nuair is mian linn rud a cruthú, caithimid a lán cód a scríobh:

bart := Duine()
athraighAinm@bart('Bart Simpson')
athraighAois@bart(10)
athraighSeoladh@bart('Springfield')

Chun an fadhb sin a réiteach, is féidir linn gníomh speisialta a úsáid, an gníomh “nua”.

Nuair a cuireann tú gníomh isteach i gcreatlach éigin leis an ainm “nua”, ritear an gníomh sin nuair a cruthaítear rud ón gcreatlach. Mar shampla, is féidir linn an creatlach Duine a scríobhamar níos luaithe a scríobh arís le gníomh “nua” mar seo:

creatlach Duine {
    gníomh nua(ainm, aois, seoladh) {
        ainm@seo = ainm
        aois@seo = aois
        seoladh@seo = seoladh
    }
    
    gníomh labhair() {
        scríobh('Dia duit, Is mise', ainm@seo)
        scríobh('Tá mé', aois@seo, 'bliana d\'aois')
        scríobh('Tá mé i mo chónaí i', seoladh@seo)
    }
}

Scriosamar na gníomhartha athraighAinm, athraighAois agus athraighSeoladh, agus in ionad sin, scríobhamar gníomh amháin leis an ainm “nua”.

Anois, in ionad an píosa cód fada a scríobhamar níos luaithe chun an rud bart a cruthú, is féidir linn é seo a scríobh:

bart := Duine('Bart Simpson', 10, 'Springfield')
labhair@bart()

Tá sé sin i bhfad níos lú cód!

Nuair a cruthaímid rud nua le

Duine('Bart Simpson', 10, 'Springfield')

glaonn sé ar an gníomh “nua” sa chreatlach.

Ansin nuair a rithimid labhair@bart(), scríobhann sé an ainm, an aois agus an seoladh ar an gconsól.

Bart