Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.04.2012, 03:10   #1
xxAlexxx
 
Регистрация: 05.12.2009
Сообщений: 6
Восклицание Перегрузка функции Delphi

Доброго времени суток!
Есть такое задание на зачет:
Используя перегрузку функций написать программу определения знака переменных разного типа
Задание сие нам, заочникам, дали на С++, но писать разрешили на чем знаете. Я знаю Pascal, работал на нем в Delphi. Как делается перегрузка функции на Делфе? В интернете нашел только краткий мануал по overload'y, но как им пользоваться - та и не понял. Помогите пожалуйста! Программа нужна до завтра/послезавтра.
xxAlexxx вне форума Ответить с цитированием
Старый 23.04.2012, 03:23   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

http://delphibasics.ru/Overload.php
Пример (упс, на сайте том красивее пример):
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    function equal(a, b: integer): boolean; overload;
    function equal(a, b: byte): boolean; overload;
  published
    function equal(a, b: real): boolean; overload;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function TForm1.equal(a: Integer; b: Integer): boolean;
begin
  if a > b then
    result := true
  else
    result := false;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  a, b: real;
begin
  a := 10;
  b := 1;
  if equal(a, b) then showmessage('yes');
end;

function TForm1.equal(a: Real; b: Real): boolean;
begin
  if a > b then
    result := true
  else
    result := false;
end;

function TForm1.equal(a: Byte; b: Byte): boolean;
begin
  if a > b then
    result := true
  else
    result := false;
end;

end.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 23.04.2012 в 03:26.
BDA вне форума Ответить с цитированием
Старый 23.04.2012, 03:49   #3
xxAlexxx
 
Регистрация: 05.12.2009
Сообщений: 6
Хорошо Благодарю!

Спасибо большое! Принцип работы оверлоада понял.
xxAlexxx вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перегрузка оператора с использованием дружественной функции KEIego Общие вопросы C/C++ 5 23.12.2010 15:41
Перегрузка функции.С++ jagger Помощь студентам 8 11.11.2010 22:27
Перегрузка функции.. (выдаёт ошибку) tipilat Помощь студентам 13 30.03.2010 19:19
C++. Перегрузка функции, требуется помощь) SinSmile Помощь студентам 0 08.12.2009 18:22
Перегрузка функции в С++ Vultar Помощь студентам 7 19.11.2009 13:12