Neler yeni
Türkiye’nin Lider Kripto Para Forumu

Blockchain dünyasının Türkçe Wikipedia'sına hoş geldiniz!

Hemen ücretsiz üye olun ve kayıt olduğunuz anda coin kazanmaya başlayın. Kendi konularınızı paylaşın, diğer üyelerle etkileşim kurun ve dilediğiniz zaman coinlerinizi çekin.

Katılmak için şimdi harekete geçin!

DelegateCall Nedir

Solidity delegatecall fonksiyonu, bir kontratın içerisinde bulunan başka bir kontratın fonksiyonunu çağırmak için kullanılır. Bu fonksiyon, çağırılan fonksiyonun yürütüldüğü kontratın sahip olduğu yetkileri kullanır ve bu sayede çağıran kontratın yetkilerini genişletir.

Aşağıdaki örnekte, Delegator kontratı içerisinde Delegatee kontratının doSomething fonksiyonunu çağırmaktadır:

contract Delegator {
address delegateeAddress;

function setDelegatee(address _delegatee) public {
delegateeAddress = _delegatee;
}

function doSomething() public {
// delegateeAddress'in içerisinde bulunan kontratın doSomething fonksiyonunu çağırır
delegatecall(bytes4(keccak256("doSomething()")));
}
}

contract Delegatee {
function doSomething() public {
// burada yapılacak işlemler
}
}

Bu kod ile Delegator contracti içerisinde Delegatee contractinin doSomething() fonksiyonunu çağırmaktadır. Delegator contracti çağırırken Delegatee contractinin yetkilerini kullanarak çalışır ve Delegatee contractinin içerisinde yapılması gereken işlemler gerçekleşir.
 

Forum istatistikleri

Konular
14.187
Mesajlar
71.169
Kullanıcılar
7.187
Son üye
hayaletx_58
Geri
Üst