C++
ph
--start-group, --end-group
Thus the order libA libB (where libB depends on libA) will trigger the error, but libB libA will be ok. If both libraries have mutual dependencies, then either use libA libB libA or use --start-group and --end-group linker flags, where the linker will go round and round the group of files until all unresolved symbols have been found.
http://stackoverflow.com/a/35927747/766330
Exceptions and Error Handling
https://isocpp.org/wiki/faq/exceptions 조금 긴데 읽어볼 가치가 있다.
Flushing stdout
fflush(stdout);
or
setbuf(stdout, NULL);