 <p>Given definition for all the classes Node, FoodSource etc is available, you need to do at least the following:</p> <p>1) Move the function definition to .h file</p> <p>2) The first line in main function is ambigous. It should be rewritten as <code>Catalog&lt;FoodSource&gt; test;</code> because <code>Catalog&lt;FoodSource&gt; test()</code> will be treated as function prototype</p>