Comma After Question Mark
We usually use a comma to separate a quote from an attributive tag (e.g. he thought, said he), even if the quote would usually end in a period. However, if the quote is a question, a question mark needs to be used in order to show the reader that the sentence is a question.
If there is a question mark, there is no need to use a comma as well; in this case, the attributive tag should come immediately after the closing quotation marks. The same rule applies to exclamation points, which are required if the reader is to understand the tone the speaker is using.
“Do you want to come to the movies with us?”, Mary asked.
The comma between the quote and the attributive tag is not required, and should be removed.
“I am trying to sleep here!”, my roommate yelled.
My roommate yelled, “I am trying to sleep here!”
This last sentence is correctly punctuated because the attributive tag is at the beginning of the sentence; the comma is used to separate the attributive tag from the beginning of the quote so there is no conflict between two punctuation marks.