Компилирует без ошибок,но...

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Re: Компилирует без ошибок,но...

Сообщение AlphaBlend » 21.06.2016 16:35:42

resident писал(а):А куда они движутся?

от поставщика к потребителю
Аватара пользователя
AlphaBlend
постоялец
 
Сообщения: 207
Зарегистрирован: 22.05.2016 10:13:10

Re: Компилирует без ошибок,но...

Сообщение resident » 21.06.2016 16:53:10

AlphaBlend писал(а):от поставщика к потребителю

Ок. Хотя ИМХО электрическая цепь не может быть наследована от пищевой цепочки.

А что является продуктом их (электронов) жизнедеятельности?
resident
энтузиаст
 
Сообщения: 605
Зарегистрирован: 13.03.2013 16:58:51

Re: Компилирует без ошибок,но...

Сообщение AlphaBlend » 21.06.2016 16:58:43

resident писал(а):А что является продуктом их (электронов) жизнедеятельности?

:mrgreen: электроны не какают :mrgreen: :mrgreen: :mrgreen:

Добавлено спустя 3 минуты 39 секунд:
мне кажется , что Вы , дяденька , слишком умны чтобы принимать у меня экзамены по физике :roll:
Аватара пользователя
AlphaBlend
постоялец
 
Сообщения: 207
Зарегистрирован: 22.05.2016 10:13:10

Re: Компилирует без ошибок,но...

Сообщение resident » 21.06.2016 17:36:23

AlphaBlend писал(а):электроны не какают

Они срут в эфир всякими помехами. Есть даже нормы по излучению от компьютера.

AlphaBlend писал(а):мне кажется , что Вы , дяденька , слишком умны чтобы принимать

Ок. А то я бы еще спросил, что является предметом их жизнедеятельности. :)

Да какой экзамен. Просто интересно. Кстати на такие вопросы даже проработавшие всю жизь электрики не отвечают. Один на работе доказывал, что электроны в проводке движутся со скоростью света :mrgreen:
resident
энтузиаст
 
Сообщения: 605
Зарегистрирован: 13.03.2013 16:58:51

Re: Компилирует без ошибок,но...

Сообщение Лекс Айрин » 21.06.2016 18:05:23

AlphaBlend писал(а):от поставщика к потребителю


Вообще-то, строго говоря, они движутся от поставщика к поставщику.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Компилирует без ошибок,но...

Сообщение pupsik » 21.06.2016 19:37:59

Bombucho если еще не сдался... Упустил один момент в последнем архиве - сторону надо на 4 умножить.
Т.е. в unit3 надо:
Код: Выделить всё
procedure Tpyramid.get_area;
var
  s : real;
begin
  s := 0.5 * fapothem * int(side);
  fareap := 4 * (s + square_area);
end;

Кстати о полиморфизме.
Если функции с одинаковым названием, а результат разный тип. Это полиморфизм или нет?
Все одно трепетесь. Так хоть с пользой будет.
pupsik
энтузиаст
 
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13

Re: Компилирует без ошибок,но...

Сообщение Лекс Айрин » 21.06.2016 19:48:16

pupsik писал(а):Если функции с одинаковым названием, а результат разный тип. Это полиморфизм или нет?
Все одно трепетесь. Так хоть с пользой будет.

Если в одном объекте, то перегрузка. Если в разных, то полиморфизм.

Добавлено спустя 2 минуты 15 секунд:
Строго говоря, перегрузка не обязательно приурочена к объекту/классу. Можно, насколько мне известно, перегрузить и обычную функцию/оператор.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Компилирует без ошибок,но...

Сообщение pupsik » 21.06.2016 20:06:37

Просто, судя по http://lazarus-ccr.sourceforge.net/fpcdoc/ref/refsu25.html, там используется virtual, override. И это является правильным.
Но..о есть простая одинаковая функция в родителе и производном. С разным типом результата. Без указания метода. Пример:
function get : string;
function get : integer;
Вроде как бы полиморфизм. Но что то не понял. Методы автоматом "привязуются", или...?
pupsik
энтузиаст
 
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13

Re: Компилирует без ошибок,но...

Сообщение AlphaBlend » 21.06.2016 20:17:36

" все смешалось - люди , кони"... физика, математика ... Только теперь понимаю , сколько у нас Лобачевских, Ньютонов, Вудов, Тесла ... :mrgreen: Лобачевский бы оценил выражение "квадрат - это пирамида с нулевой апофемой" . Тогда круг - это шар с нулевым объемом. Интегральная математика тихонько седеет и подстраивается под новые тождества "Евклидовой стереометрии" . :mrgreen:
resident писал(а):Кстати на такие вопросы даже проработавшие всю жизь электрики не отвечают.

Электрикам вовсе не обязательно знать , как на квантовом уровне работает цепь . Электрик должен знать максимум Правила Кирхгофа . Закон Ома он знать обязан , основы электромагнетизма. и то , думаю , что уравнения Максвелла ему вовсе там необязательны. а если электрику дать почитать " релятивистскую механику для чайников" - он быстрее сопьется :mrgreen: :mrgreen: :mrgreen:
resident писал(а):Один на работе доказывал, что электроны в проводке движутся со скоростью света
И Вы знаете , он был почти прав. Электроны на орбиталях проводника никто не отменял , а движутся они с околосветовой скоростью примерно [ (1/137) * с * w = v ( где w - количество протонов в ядре) ] Электрику бы премию за глубокие познания выдать , а вы над ним посмеялись . А он-то был почти прав.
Последний раз редактировалось AlphaBlend 21.06.2016 20:46:07, всего редактировалось 2 раз(а).
Аватара пользователя
AlphaBlend
постоялец
 
Сообщения: 207
Зарегистрирован: 22.05.2016 10:13:10

Re: Компилирует без ошибок,но...

Сообщение pupsik » 21.06.2016 20:18:42

Кажись да: "возможность объектов с одинаковой спецификацией иметь различную реализацию". Т.е. результат может быть другим типом. И можно обойтись без методов. Или ошибаюсь?
pupsik
энтузиаст
 
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13

Re: Компилирует без ошибок,но...

Сообщение resident » 21.06.2016 21:07:33

Лекс Айрин писал(а):Если в одном объекте, то перегрузка. Если в разных, то полиморфизм.

Хоть здесь:
Код: Выделить всё
  TMyParent = class
    function One: real;
  end;

  TMyChild = class(TMyParent)
    function One: real;
    function One: string;
  end;

Хоть здесь:
Код: Выделить всё
  TMyParent = class
    function One: real;
  end;

  TMyChild = class(TMyParent)
    function One: string;
  end;

Полиморфизма нет.

Добавлено спустя 3 минуты 40 секунд:
AlphaBlend писал(а):Тогда круг - это шар с нулевым объемом.

Шар с нулевым объемом - это точка.
resident
энтузиаст
 
Сообщения: 605
Зарегистрирован: 13.03.2013 16:58:51

Re: Компилирует без ошибок,но...

Сообщение AlphaBlend » 21.06.2016 21:16:00

resident писал(а):Шар с нулевым объемом - это точка

стоя апплодирую :mrgreen: Объемы точки еще никто не пробовал измерять . Да. А если точка не шар , а , например , икосаэдр ? получается тогда ,что треугольник с нулевым объемом - это точка , а следовательно это - маленький икосаэдр ? :mrgreen: :mrgreen: :mrgreen:
Аватара пользователя
AlphaBlend
постоялец
 
Сообщения: 207
Зарегистрирован: 22.05.2016 10:13:10

Re: Компилирует без ошибок,но...

Сообщение resident » 21.06.2016 21:36:00

AlphaBlend писал(а):а движутся они с околосветовой скоростью примерно [ (1/137)

Если вам с следующем месяце начнут выдавать одну стотридцатьседьмую часть обычной зарплаты, то вы примерно с обычной скоростью будете спешить на работу на следующий день? :)
resident
энтузиаст
 
Сообщения: 605
Зарегистрирован: 13.03.2013 16:58:51

Re: Компилирует без ошибок,но...

Сообщение AlphaBlend » 21.06.2016 21:39:17

resident писал(а):Если вам с следующем месяце начнут выдавать одну стотридцатьседьмую часть обычной зарплаты

:D я не работаю . Дома сижу :mrgreen:
Аватара пользователя
AlphaBlend
постоялец
 
Сообщения: 207
Зарегистрирован: 22.05.2016 10:13:10

Re: Компилирует без ошибок,но...

Сообщение resident » 21.06.2016 21:43:11

AlphaBlend писал(а): а следовательно это - маленький икосаэдр ?

И не спрашивайте, я не знаю, что такое икосаедр.

Добавлено спустя 1 минуту 56 секунд:
AlphaBlend писал(а):я не работаю . Дома сиж

Кто понял жизь, тот не работает. :mrgreen:

Добавлено спустя 5 минут 58 секунд:
Если функции с одинаковым названием, а результат разный тип. Это полиморфизм или нет?

Вопрос не в ту степь, т.к. это применимо как к раннему так и к позднему связыванию.
1) Если параметры функции одинаковые, то это подмена метода.
2) Если параметры другие, то новая версия, читай совершенно другой метод.

Допустим подмена:
Код: Выделить всё
  TMyParent = class
    function One: real;
  end;

  TMyChild = class(TMyParent)
    function One: string; virtual;
  end;

  TMyGrandChild = class(TMyChild)
    function One: boolean; reintroduce;
  end;

  TMyGrandGrandChild = class(TMyGrandChild)
    function One: pointer;
  end; 
resident
энтузиаст
 
Сообщения: 605
Зарегистрирован: 13.03.2013 16:58:51

Пред.След.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 240

Рейтинг@Mail.ru