Johdatus C #: n toimintoihin

click fraud protection

C # -merkinnässä toiminto on tapa pakkaa koodi, joka tekee jotain ja palauttaa sitten arvon. Toisin kuin C: ssä, C ++ ja joitain muita kieliä, toimintoja ei ole itsessään. Ne ovat osa olio- lähestymistapa ohjelmointiin.

Laskentataulukoiden hallintaohjelma voi sisältää esimerkiksi sum () -toiminnon osana objektia.

C #: ssa funktiota voidaan kutsua jäsenfunktioksi - se on luokan jäsen -, mutta tämä terminologia on jäljellä C ++: sta. Sen tavallinen nimi on menetelmä.

Esimerkki-menetelmä

Menetelmiä on kahta tyyppiä: ilmentymämenetelmä ja staattinen menetelmä. Tämä johdanto kattaa instanssimenetelmän.

Alla oleva esimerkki määrittelee yksinkertaisen luokan ja kutsuu sitä Testata. Tämä esimerkki on yksinkertainen konsoli-ohjelma, joten se on sallittu. Yleensä C #-tiedostossa määritetyn ensimmäisen luokan on oltava lomakeluokka.

Tällainen tyhjä luokka on mahdollista luokan testi {}, mutta se ei ole hyödyllinen. Vaikka se näyttää tyhjältä, se - kuten kaikki C # -luokat - perii sitä sisältävältä esineeltä ja sisältää oletuksen rakentaja pääohjelmassa.

instagram viewer
var t = uusi testi ();

Tämä koodi toimii, mutta se ei tee mitään, kun suoritetaan, paitsi luoda ilmentymän T tyhjästä testiluokasta. Alla oleva koodi lisää funktion, menetelmän, joka antaa sanan "Hei".

käyttämällä järjestelmää;
nimitila funcex1
{
luokan testi
{
julkinen mitätön SayHello ()
{
Konsoli. WriteLine ("Hei");
}
}
luokkaohjelma
{
staattinen void Main (merkkijono [] args)
{
var t = uusi testi ();
T. Sano Hei() ;
Konsoli. ReadKey ();
}
}
}

Tämä koodiesimerkki sisältää Konsoli. ReadKey (), joten kun se suoritetaan, se näyttää konsoli-ikkunan ja odottaa avaintiedot, kuten Enter, Välilyönti tai Return (ei shift-, Alt- tai Ctrl-näppäimiä). Ilman sitä se avaa konsoli-ikkunan, tulostaa "Hei" ja sulkeutuu sitten kaikki silmänräpäyksessä.

Toiminto Sano Hei on suunnilleen niin yksinkertainen toiminto kuin sinulla voi olla. Se on julkinen toiminto, mikä tarkoittaa, että toiminto näkyy luokan ulkopuolelta.

Jos poistat sanan julkinen ja yritä koota koodi epäonnistuu käännösvirheellä "funcex1.test. SayHello () 'ei ole käytettävissä suojaustasonsa takia. "Jos lisäät sanan" yksityinen ", missä sana julkinen oli, ja käännä uudelleen, saat saman käännösvirheen. Vaihda vain takaisin "julkiseksi".

Sana mitätön funktiossa tarkoittaa, että funktio ei palauta mitään arvoja.

Tyypilliset funktion määrittelyominaisuudet

  • Pääsytaso: julkinen, yksityinen ja jotkut muut
  • Palautusarvo>: tyhjä tai mikä tahansa tyyppi, kuten int
  • Menetelmän nimi: SayHello
  • Mikä tahansa menetelmäparametri: ei toistaiseksi. Ne on määritelty suluissa () menetelmän nimen jälkeen

Toisen toiminnon, MyAge (), määritelmäkoodi on:

julkinen int MyAge ()
{
paluu 53;
}

Lisää se heti Sano Hei() menetelmä ensimmäisessä esimerkissä ja lisää nämä kaksi riviä ennen Konsoli. ReadKey ().

var ikä = t. Ikäni();
Konsoli. WriteLine ("David on {0} vuotta vanha", ikä);

Ohjelman suorittaminen tuottaa nyt tämän:

Hei
David on 53-vuotias,

var ikä = t. Ikäni(); soitto menetelmälle palautti arvon 53. Se ei ole kaikkein hyödyllisin toiminto. Hyödyllisempi esimerkki on laskentataulukon Sum-funktio, jossa on joukko ints, aloitusindeksi ja summa-arvojen lukumäärä.

Tämä on toiminto:

julkinen kelluva summa (int [] arvot, int startindex, int endindex)
{
var yhteensä = 0;
for (var index = startindex; indeksi <= ENDINDEX; index ++)
{
yhteensä + = arvot [hakemisto];
}
tuotto yhteensä;
}

Tässä on kolme käyttötapausta. Tämä on koodi, joka lisätään kohtaan Main () ja soitetaan testaamaan Sum-toiminto.

var-arvot = uusi int [10] {1, 2, 3, 4, 5, 6, 7, 8, 9,10};
Konsoli. WriteLine (t. Summa (arvot, 0,2)); // Pitäisi olla 6
Konsoli. WriteLine (t. Summa (arvot, 0,9)); // pitäisi olla 55
Konsoli. WriteLine (t. Summa (arvot, 9,9); // tulee olla 10, koska 9. arvo on 10

Edessä silmukka liittää arvot alueella startindex endindexiin, joten startindex = 0 ja endindex = 2, tämä on summa 1 + 2 + 3 = 6. Kun taas 9,9, se lisää vain yhden arvon [9] = 10.

Funktion sisällä paikallisen muuttujan kokonaismäärä alustetaan nollaksi ja siihen lisätään sitten taulukon arvojen asianmukaiset osat.

instagram story viewer