Solidity
介面中是否可以有可選的屬性或方法?
我目前無法部署任何不 100% 遵守指定介面的契約。有沒有辦法將某些屬性或方法標記為可選,如果沒有,這是計劃中的功能嗎?
據我所知,沒有計劃允許這樣做。
介面的整個想法是確保實現確實符合介面。不合規的合約可能而且確實會在與其他人的互動層面上造成嚴重問題,其中“其他人”是指期望某種行為的其他合約、錢包和交易所。
如果您描述了您需要解決的挑戰,可能有人會提出另一種方法。
希望能幫助到你。
如果我理解你的觀點,我可以說,鑑於我更喜歡一種不同的方法,比如為此目的定制特殊介面,正式地你可以添加一個無效的虛擬合約來實現和用幾乎空的程式碼重載不需要的功能。如果你讓你的真實合約繼承了上述介面和無效的虛擬合約,你就可以編譯和部署整個合約。如果與我更喜歡的方法(自定義界面)相比,它會花費額外的氣體,但它確實有效。