Parameetri c ja ref vahe erinevus

ref (viide) parameeter

Parameetrit „ref” kasutatakse väärtuse edastamiseks võrdlusena tegelikust parameetrist formaalsesse parameetrisse, st callee-meetodist nn. C #-s on viiteparameetriks deklareeritud parameeter, mille modifikaator on ref. Kui viite parameetreid viite alusel, siis erinevalt väärtusparameetritest selle parameetri jaoks uut asukohta ei looda. Kõik formaalses parameetris tehtud muudatused kajastuvad tegelikus parameetris.

Näide ref. Parameetrist
Nagu ülaltoodud programmilõikes näidatud, kajastuvad kõik muudatused, mis on tehtud m-s, n-ni, kuna parameeter edastatakse viitega.

väljundi (väljundi) parameeter

Väljundparameetrit kasutatakse tulemuse edastamiseks helistamisfunktsioonile. Väljundsõna kasutatakse parameetri deklareerimiseks väljundparameetriks. Sarnaselt võrdlusparameetriga ei loo väljundparameeter uut salvestuskohta. Selle asemel saab sellest parameetri varjunimi helistamismeetodis.

Näide parameetrist väljas
Ülaltoodud programmis kuulutatakse x väljakutsumise funktsioonis parameetriks out ja nagu näete, pole x lähtestatud. Kui ruutfunktsioon lõpeb, kopeeritakse q väärtus väljundparameetrisse x.

Ref ja out parameetri erinevus C # -s

  1. Võrdlusparameetris peegeldavad formaalse parameetri muudatused tegelikku parameetrit, väljundparameetris aga väärtus kajastub tagasi kutsumisfunktsiooni parameetris välja..
  2. Tegelikule parameetrile „väljund” ei omistata tavaliselt väärtust, samas kui referentsiks deklareeritud tegelikule parameetrile tuleks enne helistamist alati väärtus anda.
    Märge: Peate määrama meetodi kehas oleva parameetri väärtuse; vastasel juhul meetodit ei kompileerita.
  3. Nii välja- kui ka ref-parameetrid ei loo uut mälu asukohta.
  4. Ref ja out parameetreid töödeldakse töötsüklis erinevalt, kuid kompileerimise ajal käsitletakse neid samu.
IT