How to use Auto_, ItemClass_ and ThisClass_?

It feels a bit optimistic to ask this considering the response my previous question has gotten so far, but I’ll give the rack another turn.

As per the subject, how can we make use of Auto_, ItemClass_ and ThisClass_ in our code?

I’ve seen allusions to them being used for generic programming, but little explanation of how we can use them to do generic programming for our own classes/objects?

Edit: Just wanted to add a bit of background to explain some of where I’m coming from.

I’ve tried using Auto_, but it seems that all that happens, is that I make a data member Auto_, then everything that would use that data member must be Auto_. Auto_ has no constructor, and nothing can be converted to Auto_. So Auto_ is a dead-end.

I’ve tried using ItemClass_, but it seems like a data member of ItemClass_ is considered to be Object, and trying to treat that data member as another type is an error. So ItemClass_ is a dead-end, could just use Object instead and achieve the same thing.

I haven’t tried ThisClass_ yet, it seems to me that it simply refers to the class it is used in the scope of; perhaps if Auto_ or ItemClass_ or some other generic/template programming were being used, I could see a use for it, but thus far, I have not.

I could really use some explanation and/or examples here, because at the moment, it all seems so pointless.