Шаблон оператора индекса массива C++

После попытки сделать доступ к классу хранения немного проще, я оказался в ситуации, когда у меня не так много знаний о. И найти людей, которые пытаются делать то же самое, что и я, непросто.

Что я пытаюсь сделать, так это иметь класс, который хранит массив значений в виде строк внутри, но допускает простое приведение типов со стороны пользователя. Что я планировал сделать, так это использовать оператор индекса массива для возврата любого типа, который они указывают через шаблон. Хотя, звучит намного лучше, чем работает на практике. Вот простой пример того, что я делаю, чтобы дать вам представление о том, как это должноработать.

class StringList
{
    public:
    template <typename T> 
    T operator[](const int i)
}

Оттуда я определял несколько конкретных шаблонов, и любой пользователь мог очень легко определить дополнительные, если это необходимо. Но самая большая проблема в том, что я не знаю, как вызвать оператор индекса с помощью шаблона. Сначала я предположил следующее (что, видимо, неверно), учитывая, что это похоже на стандартный способ вызова шаблонного метода.

StringList list;
T var = list<T>[0];

Кто-нибудь знает, как правильно вызывать оператор нижнего индекса в качестве шаблона? Или я должен просто не делать этого и использовать именованный метод?

9
задан TheCodeBroski 31 March 2012 в 17:07
поделиться