Нам не разрешено определять функторную структуру внутри функции, потому что нельзя использовать функции объявленных структур в создании шаблонов функций.
Есть ли какие-либо другие существенные ошибки, о которых нужно знать? Например. это было бы плохо:
int foo()
{
struct Scratch
{
int a, b, c;
};
std::vector<Scratch> workingBuffer;
//Blah Blah
}