185 похожих чатов

А еще вопрос, начала изучать диспетчеризацию, окей, я поняла что

есть там статическая/динамическая/сообщений, динамическая еще на 2 делится, эти типы различаются скоростью/поддерживают ли наследование/полиморфизм, но в чем вообще смысл?)

ну т.е методы вызываются под копотом и вызваются, зачем нам знать методы диспетчеризации?

7 ответов

26 просмотров

Динамическая на 2 делится?

Таня- Автор вопроса
Таня
на Virtual Table и Witness Table

Ну, я ее табличной называю

Чтобы вот в таких случаях, когда ты ожидаешь вызов метода класса, а вызывается другой, не было потеряно большое количество времени на поиск ошибок.

Таня- Автор вопроса
Vadim Shishkov
Чтобы вот в таких случаях, когда ты ожидаешь вызов...

т.е вот задачка все-таки и связана с диспетчеризацией?

Знать диспетчеризацию надо что бы понимать зачем тот же final у класса написан. Так же это в целом помогает тебе понять как ты можешь улучшить работу программы благодаря этим заниям. Программе потребуется меньше врмени что бы найти вызываемый метод если он статичный, программе не придется пробегаться по коду что бы удостоверится нет ли расширения которое реализует этот метод. Когда у тебя очень большие классы и много вызовов методов такие мелкие решения по оптимизаци помогают улучшить работу программы и ее отзывчивость. И предотвращает непонятных багов которые ты не ожидаешь, например если вызвался не тот метод который ты ожидала.

Похожие вопросы

Обсуждают сегодня

Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
#include <stdio.h> #include <stdlib.h> #include <time.h> void mass_first_generate(int mass[5][7]) {     for (int N = 0; N < 5; N++) {         for (int A = 0; A < 7; A++) {   ...
Чувак
6
Всем привет! Решаю 99 OCaml Problems и столкнулся со следующей проблемой (прошу палками не забивать, я OCaml практически не трогал до этого момента): open OUnit2 let create_...
К|/|pи/\/\ 6е3yглbIи
2
Точно, оно. У тебя там имена потоков выставляются?
Александр (Rouse_) Багель
11
https://www.linkedin.com/posts/ugama-benedicta-kelechi-codergirl-103041300_mobiledevelopment-fluttertraining-handsonlearning-activity-7263445699227254784-IdHB?utm_source=share...
CoderGirl
16
возможно ли как-то передать в электрон или таури медиа поток с рендера 2д движка? двиг запускается как dll, а дальше надо как-то отправлять рендер кодировать не подходит, зр...
Kyle Nekto
7
Ну вот просто даже давайте вот как. Какой нибудь конкретный кейс, можете в пример привести, где бч работает и приносит прикладную пользу, а не просто что бы было? Не крипту.
Alexander Andreev
22
Помогите пожалуйста. Делаю систему плагинов. Проблема сейчас в такая: плагины загружаются в основном потоке. FLibHandle := SafeLoadLibrary(FFileName) Но нужно еще выполнить фу...
Илья 🤣
10
объясните пожалуйста, почему функция не работает должным образом? вроде должно брать активное окно сравнивать его размер с размером экрана, и если есть совпадение = true прове...
JF
12
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Карта сайта