C++で乱数を扱う為のクラスとか関数はありますか?
rand/srand使うしかないですか?

rand/srand使うとしたら、シードによく現在時刻使いますが
現在時刻を取得する方法はtimeしかないですか?

++らしい方法があれば教えてください。