2010-08-24 2 views
0

Простой вопрос; Прямо сейчас у меня есть что-то вроде этого:Typedef контейнер указателей функций

typedef void(*MyFunctionPointer)(int); 
typedef std::vector <MyFunctionPointer> MyFunctionPointerContainer; 

Однако я хочу, чтобы этот контейнер определение типа во в одном ряду, пропуская первый ЬурейеЕ, как я могу это сделать?

+2

Вопрос - зачем? Это для обфускации? – EboMike

+0

Вы хотите сохранить одну строку кода? Два typedefs выглядят намного лучше. –

+0

EboMike: Я просто хотел знать. –

ответ

10
typedef std::vector < void(*)(int) > MyFunctionPointerContainer; 
+0

Черт бы тебя побрал! Ударьте меня на 4 секунды; +1 и нажимая мой дубликат. –

+0

+1, но я все равно поеду с typedef, потому что я бы скорее написал 'for (MyFunctionPointerContainer :: iterator it = ...)' than 'for (std :: vector :: iterator it = ...) ' –

+0

' typedef MyFunctionPointerContainer :: итератор MyFunctionPointerIterator; 'также будет работать ... – a1ex07

Смежные вопросы