No, there is no way to complain about it or directly address the downvoter about it. There has been ample discussion here on Meta before, looking at whether or not requiring the downvoter to provide a reason is a good idea. One such a discussion can be found here: Encouraging people to explain downvotes
The concensus seemed to be that it would cause more problems than it solved.
So what can you do?
If the answer you've given gets a lot of upvotes and all of a sudden an isolated downvote, don't sweat it. Strange random downvotes happen. And even "wrong" downvotes. It's simply part of the "game".
But what if you get a significant number of downvotes and you don't really know why. First of all don't necessarily assume you're 100% correct. You might not realize that there are some problems with your answer. You could always inquire in a comment whether or not someone could explain what the problem with your answer is. And not in a hostile way. As much as you have tried to teach or help someone with your answer, be willing to learn.
"But I've tried this and it works perfectly" you might say. Well, that might be true. But is it a good approach? Is it safe? There are many ways in which code can be written and apparently work. But techniques might have been updated. Your code might have unsafe side-effects. There might be simplier/easier/more reliable ways to solve the problem. Etc. etc. Learn from it.
In short, downvotes happen. They are not an attack on you, but a way to tell you and the question's OP, that there might be problems with the given solution. Try to learn from them and you might actually get more out of the question than you have put in.