Если я хочу создать шаблон функции, где параметр шаблона не используется в списке аргументов, я могу это сделать таким образом:шаблоны оператора в C++
template<T>
T myFunction()
{
//return some T
}
Но вызов должен указать «T 'использовать, поскольку компилятор не знает, как это работает.
myFunction<int>();
Но, предположим, я хотел сделать что-то подобное, но для оператора []. шаблон
T SomeObject::operator [ unsigned int ]
{
//Return some T
}
Есть ли способ вызова этого оператора? Это не появляется в силе:
SomeObject a;
a<int>[3];
Ницца, я не знал, что вы можете это сделать! Но да, это так побеждает превосходство использования перегрузки оператора вообще. – Scott
Действительно. Обычно он переименовывается в 'get()'. – GManNickG
Разве оператор [] не должен возвращать ссылку? – navigator