-> is called something like a postfix expression. It’s used when a pointer is accessing a child of itself like a class. It’s the alternative for (*name).child. Rather, it can just be name->child.
:: is the scope operator. It’s used for things like namespaces, so if you have a namespace mine with a function yours, then you could access it such as mine::yours. If you were to just go ::yours, then it would look for a function (or variable) in the global scope.