すいません、多次元配列の動的確保の構文についての質問です。
自前のクラスMyClassのポインタ配列を動的に確保したいのですが
ネットで調べたところ以下のような方法で出来ることがわかりました。

int tblSize; // ここが動的に変化する
**MyClass clsTbl = new MyClass*[tblSize];
for(int i=0;i<tblSize;i++) {
clsTbl[i] = new MyClass;
}


実際に動いてるので問題ないのですが、下記のnew構文の意味がよく分かりません。
この↓書き方がしっくりこないんです。
 new MyClass*[tblSize];

ポインタの配列なので、こういう場合は
 new (*MyClass)[tblSize];

というのが正しいように感じるのですが、なぜこのような書き方になってしまうのでしょうか?
ご存知の方、いらしたら教えてください。