sh_j
1
이 컨트렉트에서 다중 상속을 받고 있는데
예를 들어 KIP17Full.sol하고 KIP17Burnable.sol하고 KIP17Mintable.sol의 컨트랙트를 보면
모두 KIP17.sol를 상속 받고 있습니다
그러면 KIP17.sol 컨트랙트가 3개가 있는데 배포할 시 내부적으로 3개를 만드는건가요
아니면 우선순위로 하나만 생성되는 것인가요?
만약 여러개를 만든다면 KIP17.sol의 특정 함수를 호출할 때 중복이 될텐데 이해가 안가네요
Kale
2
안녕하세요.
솔리디티에 대한 binary파일은 솔리디티 컴파일러인 solc에 의해서 만들어집니다.
상식적으로 생각해보면 compiler 입장에서는 상속 혹은 import하는 contract파일을 모두 compile해서 한뒤 링크를 걸지 않을까 생각됩니다.
또한 문의하신 궁금한 점은 Solidity의 상속과 그 규칙을 살펴보시면 많은 도움이 되실 것 같습니다.
https://docs.soliditylang.org/en/v0.8.10/contracts.html#inheritance
감사합니다.
1개의 좋아요
sh_j
3
중복되는 상속이 제거되고 하나만 컴파일되네요 감사합니다
1개의 좋아요