I've never walked out but complained in Nandos once 

 I had some sort of beef wrap, I tried eating it but the beef inside was literally the toughest meat I have ever tried, 
non of it was edible due to the amount of gristle, I ended up basically having the tortilla wrap, salad and cheese for my dinner.
The head waiter asked if our meals were OK and I basically explained that it was inedible, he tried to wave the issue aside by explaining that beef can sometimes be tough (yes thanks for that Captain Obvious), but eventually admitted that they were taking the item off the menu soon, which obviously was all I needed, I got a voucher for a free meal in the end 
 
If I am out to enjoy the meal and am expecting something special then I would always complain if something was unacceptable. What is the point in spending time and money on something you could do yourself at home for cheaper and better quality?