I have an stl vector of boost::shared_ptr's declared like so:
vector< shared_ptr<delim_list> > row_data;

delim_list is a custom class encapsulating a vector of strings.

The container is filled like this:
shared_ptr<delim_list> insert_list(new delim_list(line, ','));
row_data.push_back(insert_list);

When the row_data vector goes out of scope there is a access memory reading violation thrown from the std::string library.

I am using VS2005 and am quite at a loss. The code worked when I was using raw pointers, but am now trying to use smart pointers to save time and gain security.

PS: Are there any code tags for these posts?

Thanks,
Ian