#include <iostream>
using namespace std;
template <class T>
class ListManager
{
private:
void* FirstItem;//This would point to the first item of the list
void* LastItem;//This would point to the last item of the list
public:
void AddItemToList(const T& Item){
std::cout << Item << std::endl;
};
void RemoveItemFromList(const T& Item){};
};
int main() {
ListManager<std::string> mgr;
mgr.AddItemToList("Test");
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwogCnRlbXBsYXRlIDxjbGFzcyBUPgpjbGFzcyBMaXN0TWFuYWdlcgp7CiAgICBwcml2YXRlOgogICAgICAgICB2b2lkKiBGaXJzdEl0ZW07Ly9UaGlzIHdvdWxkIHBvaW50IHRvIHRoZSBmaXJzdCBpdGVtIG9mIHRoZSBsaXN0CiAgICAgICAgIHZvaWQqIExhc3RJdGVtOy8vVGhpcyB3b3VsZCBwb2ludCB0byB0aGUgbGFzdCBpdGVtIG9mIHRoZSBsaXN0CiAgICBwdWJsaWM6CiAgICAgICAgIHZvaWQgQWRkSXRlbVRvTGlzdChjb25zdCBUJiBJdGVtKXsKICAgICAgICAgCXN0ZDo6Y291dCA8PCBJdGVtIDw8IHN0ZDo6ZW5kbDsKICAgICAgICAgfTsKICAgICAgICAgdm9pZCBSZW1vdmVJdGVtRnJvbUxpc3QoY29uc3QgVCYgSXRlbSl7fTsKfTsKIAppbnQgbWFpbigpIHsKCUxpc3RNYW5hZ2VyPHN0ZDo6c3RyaW5nPiBtZ3I7CgltZ3IuQWRkSXRlbVRvTGlzdCgiVGVzdCIpOwoJcmV0dXJuIDA7Cn0=