Cunoștințe, prelegere, c #

Utilizarea delegațiilor ca metode de apel invers

Metoda de apel invers este folosită pentru a transmite o metodă ca parametru unei alte metode, care poate fi apelată prin metoda "pointer" trecută.

Metodele de returnare pot fi utilizate în diverse scopuri. Cel mai adesea ele sunt utilizate pentru a implementa procesarea datelor asincrone sau pentru a determina codul care efectuează prelucrarea suplimentară a datelor.

Ca urmare a acestei aplicații, metoda Metod1 va fi numită mai întâi. și apoi Metod2.

Utilizarea codului neangajat

Implicit, aplicațiile din C # se referă la codul gestionat. Dar, dacă este necesar, codul gestionat poate interacționa cu codul neangajat. Pentru codul neangajat, apelat din aplicațiile C # gestionate, este posibil să existe funcții de biblioteci DLL și servicii de componente COM. O aplicație de cod gestionat în C # poate include și fragmente de cod nesigur. Codul nesigur se referă, de asemenea, la codul neangajat, deoarece alocarea și eliberarea memoriei din acesta nu este controlată de timpul de executare. NET.

Codul nesigur

Un fragment de cod nesigur trebuie marcat cu cuvântul cheie nesigur.

Cuvântul cheie nesigur este necesar pentru a marca orice fragment de cod care conține pointerul.

Modificatorul nesigur poate fi specificat pentru metode, proprietăți și constructori (cu excepția constructorilor statici), precum și pentru blocuri de cod.

Pentru a utiliza cod nesigur, trebuie să setați opțiunea de compilator / nesigur. Pentru a face acest lucru, selectați numele proiectului în fereastra Solution Explorer și apelați dialogul Pages Pages (prin meniul contextual) (consultați Figura 18.1). și apoi pe proprietățile de configurare | Construiți valoarea opțiunii Blocare blocare coduri nesigure la True.

Cunoștințe, prelegere, c #


Fig. 18.1. Dialogul paginilor de proprietate

Pointerii pot fi utilizați numai cu tipurile de dimensiuni, matrice și șiruri de caractere. Când se specifică un pointer la o matrice, primul element al matricei trebuie să fie un tip de dimensiune.

Puteți specifica orice tip neordonat sau vid ca tip. O expresie este un pointer la un anumit tip. Blocarea obiectului se aplică numai instrucțiunilor sau blocurilor executabile specificate. Accesul la o variabilă fixă ​​nu se limitează la domeniul de aplicare al codului nesigur. Prin urmare, o variabilă fixă ​​poate indica o valoare care se află într-un domeniu de aplicare mai larg decât domeniul de aplicare al codului nespecificat. Compilatorul C # nu emite avertismente despre această situație.

Cu toate acestea, compilatorul C # nu vă permite să setați un pointer la o variabilă gestionată în afara instrucțiunii fixe.

Articole similare