Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bir yordamda bir veya daha fazla İsteğe bağlı parametre varsa, örtük aşırı yüklemelerinden herhangi biriyle eşleşen aşırı yüklenmiş bir sürüm tanımlayamazsınız. Aşırı Yükleme Yordamlarındaki Önemli Noktalar başlığındaki "İsteğe Bağlı Parametreler için Örtük Aşırı Yüklemeler" bölümüne bakarak daha fazla bilgi edinebilirsiniz.
İsteğe Bağlı Bir Parametre
İsteğe bağlı bir parametre alan bir yordamı aşırı yüklemek için
Parametre listesinde isteğe bağlı parametresini içeren bir
SubveyaFunctionbildirim deyimi yazın. Bu aşırı yüklenmiş sürümde anahtar sözcüğünüOptionalkullanmayın.SubveyaFunctionanahtar sözcüğünden önce Overloads anahtar sözcüğünü ekleyin.Çağıran kod isteğe bağlı bağımsız değişken sağladığında yürütülmesi gereken yordam kodunu yazın.
İşlemi
End SubveyaEnd Functiondeyimiyle uygun şekilde sonlandırın.parametre listesinde isteğe bağlı parametresini içermemesi dışında ilk bildirimle aynı olan ikinci bir bildirim deyimi yazın.
Çağıran kod isteğe bağlı bağımsız değişkeni sağlamadığında yürütülmesi gereken yordam kodunu yazın. İşlemi
End SubveyaEnd Functiondeyimiyle uygun şekilde sonlandırın.Aşağıdaki örnekte isteğe bağlı bir parametreyle tanımlanan bir yordam, iki aşırı yüklenmiş yordamdan oluşan eşdeğer bir küme ve son olarak hem geçersiz hem de geçerli aşırı yüklenmiş sürümlerin örnekleri gösterilmektedir.
Sub q(ByVal b As Byte, Optional ByVal j As Long = 6)' The preceding definition is equivalent to the following two overloads. ' Overloads Sub q(ByVal b As Byte) ' Overloads Sub q(ByVal b As Byte, ByVal j As Long)' Therefore, the following overload is not valid because the signature is already in use. ' Overloads Sub q(ByVal c As Byte, ByVal k As Long) ' The following overload uses a different signature and is valid. Overloads Sub q(ByVal b As Byte, ByVal j As Long, ByVal s As Single)
Birden Çok İsteğe Bağlı Parametre
Birden fazla isteğe bağlı parametreye sahip bir yordam için normalde ikiden fazla aşırı yüklenmiş sürüme ihtiyacınız vardır. Örneğin, isteğe bağlı iki parametre varsa ve çağıran kod her birini birbirinden bağımsız olarak sağlayabilir veya atlayabilirse, sağlanan bağımsız değişkenlerin her olası bileşimi için bir tane olan dört aşırı yüklenmiş sürüme ihtiyacınız vardır.
İsteğe bağlı parametrelerin sayısı arttıkça aşırı yüklemenin karmaşıklığı artar. Sağlanan bağımsız değişkenlerin bazı birleşimleri kabul edilemez değilse, N isteğe bağlı parametreler için 2 ^ N aşırı yüklenmiş sürüme ihtiyacınız vardır. İşlemin doğasına bağlı olarak, mantığın netliği, farklı sürümleri tanımlamak için gereken ek çabayı haklı çıkarabilir.
Birden fazla isteğe bağlı parametre alan bir yordamı aşırı yüklemek için
Sağlanan isteğe bağlı bağımsız değişkenlerin hangi birleşimlerinin yordamın mantığı için kabul edilebilir olduğunu belirleyin. İsteğe bağlı bir parametre başka bir parametreye bağlıysa kabul edilemez bir birleşim ortaya çıkabilir. Örneğin, bir parametre bir kişinin adını kabul ederse ve başka bir parametre kişinin yaşını kabul ederse, yaşı sağlayan ancak adı atlayan bağımsız değişkenlerin bir bileşimi kabul edilemez.
Sağlanan isteğe bağlı bağımsız değişkenlerin kabul edilebilir her birleşimi için, karşılık gelen parametre listesini tanımlayan bir
SubveyaFunctionbildirim deyimi yazın. anahtar sözcüğünüOptionalkullanmayın.Her bildirimde,
SubveyaFunctionanahtar sözcüğünden önce Overloads anahtar sözcüğünü yazın.Her bildirimin ardından, çağıran kod bu bildirimin parametre listesine karşılık gelen bir bağımsız değişken listesi sağladığında yürütülmesi gereken yordam kodunu yazın.
Her prosedürü uygun şekilde
End SubveyaEnd Functiondeyimiyle sonlandırın.
Ayrıca bakınız
- Prosedürler
- Prosedür Parametreleri ve Bağımsız Değişkenleri
- İsteğe Bağlı Parametreler
- Parametre Dizileri
- Metot Aşırı Yükleme
- Sorun Giderme Prosedürleri
- Nasıl Yapılır: Bir Yordamın Birden Çok Sürümünü Tanımlama
- Nasıl Yapılır: Aşırı Yüklenmiş Prosedür Çağırma
- Nasıl Yapılır: Belirsiz Sayıda Parametre Alan Bir Yordamı Aşırı Yükleme
- Aşırı Yükleme Çözümü