3 に答える
C で ADT を作成することは、簡単で楽しいだけでなく、優れた学習体験でもあります。ただし、異なる ADT に再利用できる C ベースの言語で真に汎用的な ADT を作成することはできません。ADT ごとに個別の構造を作成する必要があります。
いいえ、あなたがやろうとしていることは論理的ではありません。コンパイラに2つの異なるもの(intとlink_t)を1つのもの(item_t)にtypedefするように指示しています。それは意味がありません。
You won't be able to solve this problem by way of a broad copy-paste. If you want to store three link_t
's in a BST according to your node_t
model here, then you'll have to define a new struct with a new name. (You could also use unions to store either a link_t
or an item_t
in each element of the BST, but that may be overly complicated for your purposes.)