What does ! mean in c++?

I see this in the Unreal Engine code but cannot find anything in any C++ tutorials or Google searches.

For example: return !!Object;

It makes no sense to be a double negative not operation.

Hi. It means “not operator!” actually. For non-class variables it means exactly negative not, but classes can redefine it’s operator! and return different result. For object pointers operator! usually used to check their validity (and returns false when object is valid, because it’s “not” operator), so for pointers it can mean not(invalid(pointer)).

The wording is a little confusing to me. The “operator!” meaning is not clear to me. Also “because it’s “not” operator” is confusing. I’m not sure if you are saying the !! ignores not operators that have been overridden.

But the jest seems to be that it’s a shorthand of saying “return (object != null)”. Is that correct?

Yes that is correct. (But of course the operator! can be overridden to do anything)