C++でJavaやC#のようにnewを書く方法

タイトルからするとなにを言っているのか分からないかもしれませんが、newの見栄えをJavaC#と同じようにする方法です。
例えばJavaC#Hogeというクラスをnewするときは以下のように書きます。

Hoge hoge = new Hoge();

普通にC++でnewするときは以下のように書きますね。

Hoge* hoge = new Hoge();

C++の場合はポインタを表す間接演算子が付いていますがJavaC#と同様の書き方をするためにそれをはずすことを考えます。
C++Hoge hoge = ...と宣言と同時に代入を行うと、実際には代入ではなくコンストラクタが働いています。

Hoge hoge = a; // 下と同じ
Hoge hoge(a);

これを利用してnew Hogeを受け取れるコンストラクタを作ります。

class Hoge
{
public:
    Hoge(){}
    Hoge(Hoge* hoge){}  // Hoge*を受け取るコンストラクタ

    void method(){}
};

これでC++でもJavaC#のようにnewを書くことができます。

Hoge hoge = new Hoge();
hoge.method();  // ポインタっぽいのにドットでメンバ関数を呼び出して気持ち悪い


ただJavaC#のようにnewを書きたかっただけなのでnewしたポインタは全く意味がありません。