空のプロジェクトの
ソースファイルのフォルダに →main.cpp , sub.cpp
ヘッダファイルのフォルダに →main.h , sub.h
を作り

main.cpp内で、"main.h"をインクルード
main.h内で、<iostream> と "sub.h"をインクルード
sub.cpp内で、"sub.h"をインクルード
sub.hでは何もインクルードしない
(sub.hでサンプルクラスなどを宣言をして、sub.cppでそのメンバ関数などの処理を記述しています)

という風にしているのですが
main.cpp内でsubで定義したクラスを使おうとすると、コンパイラに「そんなものないよ」って言われてしまいます。
(VCは同プロジェクト内に突っ込んでいれば勝手に分割コンパイルしてくれるんですよね?)

試しにmain.h内のインクルードを"sub.h"から"sub.cpp"にしたらコンパイル通って希望通りに動くのですが
cppファイルをインクルードすると分割してる意味がないんですよね?(コンパイルの速度など