Кстати, о длинных идентификаторах - посмотрим в творения M$.
Про
CoMarshalInterThreadInterfaceInStream и
CoGetInterfaceAndReleaseStream уже, наверное, многие тут знают. Следующая пара "рекордсменов" мне попалась при знакомстве с Windows DDK. Это
KeAcquireInStackQueuedSpinLockAtDpcLevel и
KeReleaseInStackQueuedSpinLockFromDpcLevel. Но всё-таки WinAPI - вещь гораздо более необъятная, чем я думал; "рекордсмен на сегодняшний день" оттуда:
AccessCheckByTypeResultListAndAuditAlarmByHandle (советую посмотреть в MSDN доку по этой функции, в частности
обратить внимание на количество параметров и т.п.). Конечно, если глянуть в некоторые M$-овские COM-компоненты, там и повеселее можно обнаружить. Ну, а у нас один товарищ (перлы авторства которого я ещё повспоминаю) выдумал классу следующее название:
CChangesCacheListOperationAcknowledgementElement. Это ещё не самое смешное. Подходим как-то к его тачке (вчетвером) что-то обсудить. Видим строчку:
1 | CChanges...Element * pElement = new CChanges...Element(...,...); |
(название сократил) и - чуть ли не хором - спрашиваем: "а почему pElement, а не pChanges...Element?".
Вышенаписанное к перлам не относится, поэтому в сообщение выше вписывать не стану.
Добавление от 17.10.2004 09:28:
Вот ещё хорошо известный пример от M$:
01 | BOOL AllocateAndInitializeSid( |
02 | PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, |
03 | BYTE nSubAuthorityCount, |
04 | DWORD dwSubAuthority0, |
05 | DWORD dwSubAuthority1, |
06 | DWORD dwSubAuthority2, |
07 | DWORD dwSubAuthority3, |
08 | DWORD dwSubAuthority4, |
09 | DWORD dwSubAuthority5, |
10 | DWORD dwSubAuthority6, |
11 | DWORD dwSubAuthority7, |
Исправлено: OXPEHOMETP, 17.10.2004 09:36
Добавление от 17.10.2004 09:38:
Фраза моего знакомого о страдающих длинными идентификаторами: "они бы их ещё по-немецки называли"...