Запитання з тегом «polymorphism»

В інформатиці поліморфізм - це особливість мови програмування, яка дозволяє поводитись із значеннями різних типів даних рівномірно.

3
Чи поверне GetType () найбільш отриманий тип при виклику з базового класу?
Чи поверне GetType () найбільш отриманий тип при виклику з базового класу? Приклад: public abstract class A { private Type GetInfo() { return System.Attribute.GetCustomAttributes(this.GetType()); } } public class B : A { //Fields here have some custom attributes added to them } Або я повинен просто зробити абстрактний метод, який …


6
Яка мета Rank2Types?
Я не дуже досвідчений в Haskell, тому це може бути дуже легким питанням. Які обмеження мови вирішують Rank2Types ? Невже функції Haskell вже не підтримують поліморфні аргументи?

12
Як реалізуються віртуальні функції та vtable?
Всі ми знаємо, які віртуальні функції є в C ++, але як вони реалізуються на глибокому рівні? Чи можна змінити Vtable або навіть безпосередньо отримати доступ під час його виконання? Чи існує vtable для всіх класів або лише для тих, хто має хоча б одну віртуальну функцію? Чи мають абстрактні …

7
Чому «чистий поліморфізм» кращий, ніж використання RTTI?
Майже кожен ресурс C ++, який я бачив, який обговорює подібне, говорить про те, що я повинен віддавати перевагу поліморфним підходам до використання RTTI (ідентифікація типу виконання). Взагалі, я сприймаю подібну пораду серйозно, і спробую зрозуміти обґрунтування - адже C ++ - це могутній звір і важко зрозуміти його на …
106 c++  polymorphism  rtti 

8
Звідки беруться збої "чистого віртуального виклику функції"?
Я іноді помічаю програми, які виходять з ладу на моєму комп’ютері з помилкою: "чистий виклик віртуальної функції". Як ці програми навіть компілюються, коли об’єкт не може бути створений абстрактним класом?

9
Поліморфізм з гзоном
У мене є проблема десеріалізації рядка json з Gson. Я отримую масив команд. Команда може бути запуском, зупинкою, деяким іншим типом команди. Природно, що у мене поліморфізм, і команда start / stop успадковується від команди. Як я можу серіалізувати його до правильного командного об'єкта за допомогою gson? Здається, що я …

4
Запустіть програму в GDB, поки не стане виняток
Я працюю над багатопотоковою програмою, і хочу налагодити її за допомогою GDB. Проблема в тому, що одна з моїх ниток продовжує вмирати з повідомленням: pure virtual method called terminate called without an active exception Abort Я знаю причину цього повідомлення, але я не маю уявлення, де в моїй темі воно …

8
Уникнення instanceof в Java
Наявність ланцюжка операцій "instanceof" вважається "запахом коду". Стандартна відповідь - «використовувати поліморфізм». Як би я це зробив у цьому випадку? Існує ряд підкласів базового класу; жоден з них не під моїм контролем. Аналогічна ситуація була б з класами Java Integer, Double, BigDecimal тощо. if (obj instanceof Integer) {NumberStuff.handle((Integer)obj);} else if …

6
Що таке поліморфізм у Javascript?
Я прочитав кілька можливих статей, які міг знайти в Інтернеті про поліморфізм . Але я думаю, що я не міг повністю зрозуміти значення цього та його значення. У більшості статей не сказано, чому це важливо і як я можу досягти поліморфної поведінки в ООП (звичайно, у JavaScript). Я не можу …

6
Як змоделювати RESTful API з успадкуванням?
У мене є ієрархія об’єктів, яку мені потрібно виставити через RESTful API, і я не впевнений, як мають бути структуровані мої URL-адреси та що вони повинні повертати. Я не міг знайти найкращих практик. Скажімо, у мене є собаки та коти, які успадковують тварин. Мені потрібні операції CRUD на собаках і …

30
Поліморфізм - Визначте у двох реченнях [закрито]
Закрито . Це питання має бути більш сфокусованим . Наразі відповіді не приймаються. Хочете покращити це питання? Оновіть питання, щоб воно зосереджувалось на одній проблемі, лише відредагувавши цю публікацію . Закрито 5 років тому . Удосконалюйте це питання Я розглядав інші визначення та пояснення, і жодне з них мене не …

5
Десериалізувати JSON з Джексоном на поліморфні типи - Повний приклад дає мені помилку компіляції
Я намагаюся працювати з підручником програміста Брюса, який повинен дозволити десеріалізацію поліморфного JSON. Повний список можна знайти тут Підручники програміста Брюса (чудові речі до речі) Перші п’ять я пропрацював без проблем, але останній вдарив (приклад 6), який, звичайно, є тим, що мені дійсно потрібно, щоб працювати. Я отримую наступну помилку …

1
Що таке обмеження мономорфізму?
Мене бентежить те, як компілятор haskell іноді вигадує типи, які є менш поліморфними, ніж те, що я очікував, наприклад при використанні безточкових визначень. Здається, проблема полягає в "обмеженні мономорфізму", яке за замовчуванням увімкнено у старих версіях компілятора. Розглянемо наступну програму haskell: {-# LANGUAGE MonomorphismRestriction #-} import Data.List(sortBy) plus = (+) …


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.