Публикации по теме 'polymorphism'


Кибераналогия — Наследование против полиморфизма
Забавная аналогия, которую легко объяснить. Наследование  – это просто наследование, как животные (кошка, собака и т. д.) или человек (ученик, учитель и т. д.). В то время как животные наследуют некоторые вещи, есть вариации, например, кошачье «мяуос» вместо «гавканье». поэтому полиморфизм позволяет изменять эти атрибуты/функции.

Универсальные соединения в Laravel: глубокое погружение в полиморфные отношения «один к одному»
При разработке сложных приложений вам часто приходится устанавливать различные виды отношений между вашими моделями Laravel. Eloquent ORM от Laravel, будучи надежным инструментом, предоставляет множество типов отношений для удовлетворения различных потребностей. Сегодня мы обсудим полиморфную связь «один к одному» — адаптируемый тип связи, который упрощает дочернюю модель, принадлежащую более чем одному типу модели, с помощью одной ассоциации. Понимание полиморфных отношений один к..

Вопросы по теме 'polymorphism'

Как убедиться, что вы переопределили (скрыли) метод в производном классе на С++?
class Base { public: void foo() const { std::cout << "foo const" << std::endl; } }; class Derived : public Base { public: void foo() { std::cout << "foo"<<...
335 просмотров
schedule 11.01.2024

абстрактный класс и полиморфное использование массива
я просто читаю Мейерса "Более эффективные C++ 35 новых способов" - пункт 33, и он предлагает всегда наследовать от абстрактного базового класса, а не от конкретного. одна из причин, по которой он утверждает, которую я не совсем понимаю, заключается...
671 просмотров
schedule 20.03.2024

Ошибка недопустимого указателя унаследованного класса при вызове виртуальных функций
Как вы можете видеть в приведенном ниже коде, у меня есть абстрактный базовый класс «HostWindow» и производный от него класс «Chrome». Все функции реализованы в Chrome. Проблема в том, что я не могу вызывать функции в Chrome, если они виртуальные....
1594 просмотров

полиморфизм oop python
Я не могу понять, почему этот код: class A(object): def __init__(self): self.__value = 1 def get_value(self): return self.__value class B(A): def __init__(self): A.__init__( self ) self.__value = 2 b =...
400 просмотров
schedule 30.06.2022

Многоуровневое наследование/полиморфизм и виртуальная функция
У меня есть многоуровневое наследование (от класса Ship -> класс MedicShip -> класс Medic) с кодом виртуальной функции, как показано ниже. Я полагаю, что результат должен быть: Медик 10 Медик 10 Но это дало странный результат. С другой...
1696 просмотров

Неинициализированная константа Rails в полиморфной ассоциации
Я работаю над созданием полиморфной ассоциации номера телефона с волонтером (а позже и с другими вещами), в настоящее время я застрял со следующей ошибкой: uninitialized constant HumanVolunteer::PrimaryPhone...
3663 просмотров

Что происходит, когда объект базового класса вызывает функцию производного класса (которая не является виртуальной)
Извините, если вопрос показался вам глупым. Я новичок в С++, и я изучал полиморфизм времени рома. Я хочу знать, что происходит, когда объект базового класса вызывает функцию производного класса (которая не является виртуальной). например посмотреть...
1025 просмотров
schedule 21.11.2023

Каковы критерии для исключения исключений в подклассе
Что я знал до сих пор, так это то, что подкласс при переопределении метода суперкласса должен вызывать то же исключение или подкласс исключения. Например: Это правильно class SuperClass { public int doIt(String str, Integer......
8767 просмотров
schedule 23.03.2024

Как сделать массив с полиморфизмом в C++?
class Base1 { private: int testInput; public: Base1(); virtual int GetRow(void) = 0; }; Base1::Base1() { testInput = 0; } class table : public Base1 { private: int row; public: table();...
11639 просмотров
schedule 08.09.2022

Полиморфизм Java, создающий объект подкласса с использованием его переменной суперкласса
Итак, я студент и изучаю Java. Есть одна концепция, которую мне трудно понять, и я надеюсь, что кто-то может пролить на нее свет. Мой вопрос касается полиморфизма. Скажем, например, у меня есть следующий код. Animal a = new Lizard("Lizzy", 6);...
9692 просмотров
schedule 12.02.2024

Сигнатура абстрактного метода Java
Я совершенно запутался в сигнатурах абстрактных методов, которые реализуют классы Java. Например, рассмотрим: interface Programmer { Object program(); } class Linus implements Programmer { public String program() { return "goto...
2361 просмотров

Многократная десериализация сообщения с помощью буферов протокола Google
Я работаю с чрезвычайно модульной системой. Сообщения могут быть определены по тройке src, dest, type. Я рассматриваю возможность повторной реализации наших сообщений с помощью Protocol Buffers. Я прочитал полиморфизм буфера протокола , Как...
757 просмотров

Скалярный деструктор удаления
У меня есть фрагмент кода (из DLL), который выглядит так: class A { public: virtual ~A(); }; class B : public A { public: ~B(); } ~A() { // #1 } ~B() { // #2 } Когда я использую delete an_instance_of_B , я...
8920 просмотров

Какой смысл говорить ‹? расширяет SomeObject› вместо ‹SomeObject›
Итак, я просматривал код Java и наткнулся на: List<? extends SomeObject> l; в основном этот список принимает все объекты, являющиеся каким-либо SomeObject — сам SomeObject или его наследники. Но в соответствии с полиморфизмом его...
5204 просмотров
schedule 25.08.2022

Можно ли получить доступ к членам производного класса, когда он приведен к базовому классу?
Я привел простой пример, чтобы проиллюстрировать мой вопрос. Вот базовый класс. #include <mutex> #include <atomic> class Task { public: Task() { Empty.store(true); } std::mutex Access;...
374 просмотров

Когда мне действительно нужно использовать абстрактные методы?
Если я пишу программу, которая рисует фигуры. abstract class GraphicObject { abstract void draw(); abstract void resize(); } а затем подкласс, который расширяет GraphicObject, называемый Circle. class Circle : GraphicObject {...
112 просмотров
schedule 05.10.2023

Полиморфное отношение «многие ко многим»
Я не мог сохранить связанные модели в полиморфном отношении «многие ко многим», сохраненные в базе данных. $photo = Photo::find(1); $photo->articles()->attach(2); что-то вроде этого не будет работать и дает ошибка: вызов...
3445 просмотров

Создал свой путь в dynamic_cast, как мне действовать?
Я читаю Простая обработка событий . Автор использует простую структуру для своих событий, но предлагает: Возможным улучшением здесь является передача указателя на класс Event вместо структуры. Затем класс Event может содержать любое...
71 просмотров
schedule 06.12.2023

Почему эта полиморфная операция компилируется?
Я не понимаю, почему следующий код компилируется - ICollection selecteditems = iselect.Snapshot(); foreach (Content c in selecteditems) .... Как и следовало ожидать, Snapshot() возвращает набор Content , но ICollection не содержит...
61 просмотров
schedule 26.11.2023

C ++ позволяет производным классам друзей иметь доступ к закрытому вложенному классу
Вот что я пытаюсь сделать: class A { friend class C (and all of C's derived classes) public: void DoAThing() { mpMyC->DelegateResponsibility(myB); } private: class B { }; B mMyB; C* mpMyC; }; class C { // No...
729 просмотров