Вказівники у С# презентация

Вказівники Незахищений код Синтаксис вказівників Вказівники на структуру Вказівники на члени класу

Слайд 1Тема: «Вказівники у С#»


Слайд 2Вказівники
Незахищений код
Синтаксис вказівників
Вказівники на структуру
Вказівники на члени класу


Слайд 3Незахищений код
Це змінна, яка представляє клас, або масив, містить об'єкт. Це

посилання трактується так, немов змінна сама безпосередньо зберігає дані об'єкта.
Посилання представленні так, для того, щоб спростити та мінімалізувати код.
С# дає змогу використовувати вказівники лише у спеціальних блоках, які помічаються як незахищені за допомогою ключового слова unsafe.

Слайд 4Приклад незахищеного коду
Unsafe class C {
//довільний метод класу може використовувати вказівник
}
Unsafe

void M() {
//метод може використовувати вказівники
}
Class A {
Unsafe int *p //оголошення поля вказівника
}
Unsafe {
//незахищений код
}

Слайд 5Синтаксис вказівників
Для оголошення вказівника
використовують символ “*”:


Int *pX, *pY;
double *pRes;
void *pV;


Слайд 6Приклад
Int X = 0; // змінна Х отримала значення 0
Int *pX;

// оголошення вказівника
pX = &X; //присвоєння вказівнику змінну X
pX = 10; // X набуде значення 10


Слайд 7Вказівник на структуру
Вказівник можна утворити лише на типи за значенням.
Причому для

структур існує обмеження: структура не повинна містити типів за посиланням.

Слайд 8Приклад
struct Complex {
public double Re;
public double Im;
}
//Ініціалізація вказівника на дану структуру:
Complex

*pComplex;
Complex complex = new Complex();
*pComplex = &complex;
//Доступ до членів структури здійснюється так:
(*pComplex).Re = 1; // складний варіант
Або так:
pComplex->Re = 1;

Слайд 9Вказівник на члени класу
У С# неможливо утворити вказівник на клас, однак

можна утворити вказівники на члени класу, які мають тип за значенням. Це вимагає використання спеціального синтаксису з огляду на особливості механізму прибирання “сміття”.
Ключове слово fixed повідомляє прибиральника “сміття” про можливе існування вказівників на деякі члени окремих екземплярів класу.

Слайд 10Приклад
Public class Complex {
Public double Re;
Public double Im;
}
Complex = new Complex();
Fixed

(double *pRe = &(complex.Re))
Fixed (double *pRe = &(complex.Re))
{ … }

Якщо змінні однотипні можна записати так:
Fixed (double *pRe = &(complex.Re),
(double *pRe = &(complex.Re))
{ … }



Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика