cool20141 cool20141

<a href= http://mosros.flybb.ru/viewtopic.php?f=2&t=635>Процесс получения диплома стоматолога: реально ли это сделать быстро?</a>

danilaxxl danilaxxl

CollectableItemData.cs

[CreateMenuItem(fileName = "newItem", menuName = "Data/Items/Collectable", order = 51]

GoloGames GoloGames

vadya_ivan, рад, что вам игра показалась интересной : )

P.S. Кстати уже доступна бесплатная демо-версия в Steam

vadya_ivan vadya_ivan

Визуал, задумка, музыка , механики, все в цель

GoloGames GoloGames

Ato_Ome, спасибо за позитивные эмоции, будем стараться : )

Ato_Ome Ato_Ome

Потрясающий результат, все так четенько, плавненько)
То ли саунд, то ли плавность напомнили мне игрушку World of Goo, удачи вам в разработке и сил побольше дойти до релиза!)

Cute Fox Cute Fox

Graphics are a little cool, good HD content. But this game doesn't cause nary interest me.
However the game is well done.

GMSD3D GMSD3D

Почему действие после всех условий выполняется?
[step another object]

Zemlaynin Zemlaynin

Jusper, Везде, но наугад строить смысла нет. Нужно разведать сперва территорию на наличие ресурсов.

Jusper Jusper

Zemlaynin, а карьеры можно будет везде запихать?
Или под них "особые" зоны будут?

Zemlaynin Zemlaynin

Это так скажем тестовое строительство, а так да у города будет зона влияния которую нужно будет расширять.

Jusper Jusper

А ссылка есть?

Jusper Jusper

Я не оч понял из скриншота, как вообще работает стройка. У игрока будет как бы поле строительства?

split97 split97

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

split97 split97

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

ViktorJaguar ViktorJaguar

Почему я нигде не могу найти нормальный туториал, где покажут как экипировать предмет (например, меч) в определенную (выделенную под оружие) ячейку???

Логотип проекта Программирование

Реализация нескольких интерфейсов с общим родителем

Припустим, у меня есть интерфейс с методом A. Я создаю два дочерних к нему интерфейса, один имеет метод B, второй - метод C. После чего создаю класс, реализующий оба дочерних интерфейса, и объявляю там методы A, B и C. Не возникнет ли проблем с реализацией метода А? Чаще всего насчет ситуаций с одинаковыми именами методов в интерфейсах предлагают отдельную реализацию. Мне, к примеру, нужно, чтобы там выполнялось только одно действие. Или стоит вынести метод A в отдельный интерфейс?

Ответ

lentinant:

реализован в классе.

Скользкое понятие.
В любом случае, даже если дочерний интерфейс переобъявит метод A() вот так:
interface iB
{ new void A(); void B(); }
и твой класс Class_Example реализует его, у тебя будут выполнятся одни и те же действия

  1. И в случае iB b = new Class_Example(); b.A()
  2. И в случае iA a = new Class_Example(); a.A();
  3. И в случае Class_Example class_name = new Class_Example(); class_name.A().

В случае, когда интерфейс не переобъявляет метод A() даже говорить не приходиться - тем более будут те же действия.

Вообще здесь такая штука, по моему мнению конкретно в этом случае надо разбираться по факту проблемы, а не по возможной проблеме.
P.S.
Насчет интерфейсов "Полный справочник по C#" , стр 320.

Смотрите также:


Комментарии



  • 1
  • 2 (Текущая страница)
public interface IFirst
{
    void A();
}

public interface ISecond
{
    void A();
}

Обращаем внимание на инкапсуляцию

public class MyClass1 : IFirst, ISecond
{
    void IFirst.A()
    {
        
    }

    void ISecond.A()
    {
        
    }
}

public class MyClass2 : IFirst, ISecond
{
    public void A()
    {

    }
}
Просто к теме за реализацию интерфейсов

Extravert, а MyClass2 разве будет работать?

alexprey, да
MyClass2 реализует общий для двух интерфейсов метод A(). Сами интерфейсы, как бы сказать, они же не содержат метода как таковые, они обязывают к реализации и абстрагируют. А один и тот же метод это или два разных уже другое дело.

Я почему-то думал, что второй способ как раз не вызывает вопросов :) в то время как с первым все не так гладко - чтобы использовать методы нужно приводить экземпляр к интерфейсу. А еще их "смешивать" можно.

Вы че прикалываетесь? MyClass1 это буллщит полный, такого не должно быть имхо, никому не советую такое нигде использовать, почему вообще такое можно писать - большой вопрос

Doc:

почему вообще такое можно писать

Это же шарпы, если не ошибаюсь, там и не такое бывает.

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

Кстати интересно как такая конструкция поведет себя под рефлексией - что там покажет. И попробовать, откроется ли под дерефлектором этот код.

Extravert, в такой ситуации, как по мне, лучше во враппер завернуть, чем ломиться в лоб.

Extravert, откроется, иначе бы это и не работало вовсе)

Знаешь, что самое забавное ? XD
Тот пример, который ты привел, и есть причина, почему в C# сделали множественное наследование интерфейсов и одиночное классов)

  • 1
  • 2 (Текущая страница)

Возможность добавлять комментарии была ограничена