Сильные typedefs [дубликаты]

На этот вопрос уже есть ответ здесь:

C ++ Сильно типизировано с использованием и typedef 4 ответа

Есть ли способ сделать полную копию типа, чтобы их можно было различить в контексте вывода шаблона? Возьмите пример:

#include <iostream>

template <typename T>
struct test
{
    static int c()
    { 
        static int t = 0;
        return t++;
    }
};

typedef int handle;

int main()
{
    std::cout << test<int>::c() << std::endl;
    std::cout << test<handle>::c() << std::endl;
    return 0;
}

Поскольку typedef создает псевдоним только для типа, он печатает 0, 1 вместо желаемых 0, 0. Есть ли обходной путь для этого?

Ответы на вопрос(1)

Ваш ответ на вопрос