Prefix for closing delimiter in sp-local-pair
Currently the :prefix argument to sp-local-pair allows specifying a prefix regex for the opening delimiter. It would be useful to also allow one for the closing delimiter. For example, in C++ "<" and ">" are template parameters that should match. However, "->" is for method invocation on an object pointer and smartparens should not try to pair it. Specifying :closing-prefix to "[^-]" would solve this problem if there were such an option.
I think you're better off using :when. It's not that simple in C++, you also want to ignore x < y and x << y and so on. Even if you had a good regexp you don't want to pair < in strings.
Might I suggest you take a look at the smartparens-rust.el file? Rust has the same problems so we could do something very similar in C++.
:prefix and :suffix are ment for elements where they have some "syntactic" function, i.e. they are part of the expression, so , is a prefix in elisp and ; is a suffix in C (it has to move along with the paren).
What you have is, I think, you simply want to ignore certain occurences of the pair, which is what the conditionals are for.
Feel free to submit C++ config as PR, we don't have that one yet.