JavaとかC#は一つのクラスにつき、一つのソースファイルを使う傾向があるようですが、
C++の場合は一般的にどうするべきなのでしょうか。

複数クラスを機能別にソースファイルに分けるべきなのでしょうか、
それともJavaのように一つずつクラス毎で分けたほうが良いのでしょうか。