If the internet were perfect, everyone streaming could use CQP (or better: any constant-quality mode like CRF or ICQ). These encoding methods produce the same quality for each frame, regardless the motion. For high motion, a higher bitrate is required in this case, and for low motion less bitrate. Unfortunately, a data stream with variable bitrate will not be transported flawlessly by the internet. If the bitrate rises for high motion scenes, and there are many receivers, the sender could overload its connection and every receiver gets a lag or buffers the video. This also happens every time a short bitrate spike is over the bandwidth of one receiver. So it's required to even out the bitrate for streaming, and this is done with the CBR mode. For high motion scenes, the quality is toned down temporarily, so it uses the same bitrate as low motion scenes in this mode.
So it's clear that for recording, the quality-based encoding methods are better, because high motion is encoded with better quality than with CBR mode. You can rise the bitrate for CBR to highest levels, of course, so you don't see the difference any more, but that is a waste of disk space, because lower motion scenes could be saved with muss less bandwith (or space) without suffering quality.