c++で複数あるキャストの違いを教えてください。
どちらも使える場合はどちらを選べばいいかわかまりません。

static_cast<const char*>(x); // 静的キャスト(静的な普通の型変換を行うキャスト) 
(const char*)x;              // キャスト的記法 () 
const char*(x);              // 関数的記法