The Flagship, located behind the convention center in downtown San Diego, is a great way to view the city, and enjoy delicious food and company. I would highly recommend taking out-of-town guests, and even a date on the cruise. The cruise lasts about an hour and offers views of downtown and Coronado. Dinner on the cruise costs about $60 per person.
(If you're on a budget, but want the view, you can check out the ferry that takes you downtown to Coronado, which costs about $4.50 each way.)