Pok-12-wyk-Slajd34
Z Studia Informatyczne
Równoważność strukturalna
Zgodnie z podanymi wcześniej definicjami w przypadku nazwowej równoważności typów sprawdzenie zgodności wymaga tylko porównania nazw typów.
Strukturalna równoważność typów wymaga bardziej rozbudowanych testów co widać w pokazanej w przykładzie funkcji. Warunkami bazowymi są porównania dla typów podstawowych (integer i char ). Jeżeli oba typy są tablicami, to są równoważne strukturalnie jeśli odpowiednio równoważne strukturalnie są typy indeksów i typy elementów tablic.
Jeżeli oba typy są wskaźnikami, to muszą wskazywać na równoważne strukturalnie typy.
W każdym innym przypadku sprawdzane typy nie są równoważne strukturalnie.