не срабатывает конструктор класса c++

Я начал изучать шаблоны классов и столкнулся с тем, что конструктор класса не вызывается, несмотря на строчку

Class<int> cl();

Буду очень благодарен за помощь. Вот весь код:

template <typename T>
class Class
{
private:
    T* num;

public:
    Class()
    {
        cout << "Ok\n";
        num = new T [1];
    }

    void print()
    {
        cout << num[0];
    }

};

int main()
{
    Class<int> cl();
    cl.print(); // Функция не выполнится из-за ошибки: выражение должно иметь тип класса
    return 0; 
};

Ответы (1 шт):

Автор решения: HolyBlackCat

Class<int> cl;. Не нужно никаких new.

Компилятор считает Class<int> cl(); объявлением функции (без параметров, с возвращаемым типом Class<int>).

→ Ссылка