i have header file class called 'list' , struct called 'node' within private part of class. together, class , struct make doubly threaded list of winery objects (winery being it's own class). i'm wondering if best implement , de-implement node struct's variables within list constructor , deconstructor (like this):
list::list() { struct node { item = winery::winery() nextbyname = nullptr; nextbyrating = nullptr; }; headbyname = nullptr; headbyrating = nullptr; } list::~list() { struct node { delete item; delete nextbyname; delete nextbyrating; }; delete headbyname; delete headbyrating; }
if better implement , de-implement them separately (like this):
list::node::node() { item = winery::winery() nextbyname = nullptr; nextbyrating = nullptr; } list::node::~node() { delete item; delete nextbyname; delete nextbyrating; }
or if should else? i've looked online, , in textbooks, there no clear answer on this. appreciate guys help, , if explain why solution best (if best), extremely grateful. started learning c++ few months ago after all.
by way, list.h file looks like:
#include "winery.h" class list { public: list(); ~list(); void addwinery(); void removewinery(); void displaybyrating() const; void displaybyname() const; void searchbyname() const; private: struct node { winery item; node * nextbyname; node * nextbyrating; }; node * headbyname; node * headbyrating; };
Comments
Post a Comment