The isValidSource() function can be used to evaluate a C++ source file, but it is incomplete. Brackets encountered inside comments and literal strings would not be paired with those found elsewhere in the program.
(a) C++ comments can be specified using //, which starts a comment that runs to the end of the current line, and the token pair /* */, which encloses a comment that can span multiple lines. Extend the function to skip over brackets found inside C++ comments.
(b) C++ literal strings are denoted by enclosing characters within double quotes ("string") and literal characters are denoted by enclosing a character within single quotes (‘x'). Extend the function to skip over brackets found inside C++ literal strings and characters.