• ayni isme farkli parametrelere sahip fonksiyonlar tanimlama ve kodun icinde bu fonksiyonu cagirdiginiz zaman verdiginiz parametre turu/adedine gore dogru fonksiyonun compiler tarafindan secilmesi islemi.
  • c++ ye ozel bir fonksiyon.

    ornek:

    #include <iostream.h>

    int çarp(int x, int y);
    // prototip açiklamasi
    float çarp (float x, float y);

    main()
    {
    int a = 5;
    int b = 6;
    int sonuç;
    float c = 7.9;
    float d = 9.2;
    float sonuç1;

    sonuç = çarp(a, b);
    cout << sonuç i$te

    tamlar arasinda: << sonuç <<< sonuç i$te

    float arasinda: << sonuç1 <

    note: iyi bakarsaniz program, argumentslere gore dogru fonksiyonu çagricak.
  • aslen java'da varolan eylem. class içi ve kalıtım yadigarı metodlarla sapıklık reddesine erişebilir.

    bir de (bkz: overriding)
  • bazı api'lerde bir fonksiyonun onlarca değişik versiyonu olabilir. bundan dolayı dökümantasyon dikkatli incelenmelidir.
    aşırı yükleme olarak çeviren bilimum programlama sitelerinde (csharpnedir.com) makale okumayı bıraktıracak olay. makaleleriniz çeviri, bari çeviriyi düzgün yapın
  • a$ağıdaki platformlarda bulunmaktadır:
    * ada
    * c plus plus
    * c sharp
    * d
    * delphi, 2005'ten sonra
    * perl
    * python
    * visual basic 2005

    edit: mrtksn uyardı php 5'te de varmı$.
    rodrane uyardı java'da da varmış.

    yıllar sonra gelen edit:
    php'de overloading falan yok.
    func_num_args() ile kısmen yapılabiliyor ancak bu overloading bizim c++ veya java'dan bildiğimiz overloading değil. çakma overloading.
  • dünyanın en güzel şeylerinden biri bu.

    phpdeki haline ayrıca hstayım, bi süre sonra objelere özel isim takıp bir canlıymışçasına çağırası geliyor insanın çünkü overloading sayesinde baya kabından çıkıyor objeler, onlara itaatkar evcil hayvan gibi davranıyorsunuz.

    $bobi->otur(hemen);

    burada güzel olan, sizin otur diye bir fonksiyonu önceden yazmış olmanıza hiç gerek yok.
  • ruby'deki hali pek komiktir ya allah caninizi almasin,

    class rectangle
    def initialize(*args)
    if args.size < 2 || args.size > 3
    # modify this to raise exception, later
    puts 'this method takes either 2 or 3 arguments'
    else
    if args.size == 2
    puts 'two arguments'
    else
    puts 'three arguments'
    end
    end
    end
    end
  • (bkz: overload)
  • statically typed dillerde method overloading olarak da bilinen bu yöntem; aynı isme sahip birden fazla ve birbirinden farklı, bunun yanında farklı (türde, tipte, sayıda) argümanlar kabul edebilen fonksiyonların yaratılabilmesi anlamına gelir.
hesabın var mı? giriş yap