- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
class Allocator
{
public:
virtual void *Alloc (size_t) = 0;
virtual void Dealloc (void *) = 0;
struct Allocation
{
Allocator *m_pAllocator[1];
static void Dealloc (void *ptr)
{
if (ptr)
((Allocator **)ptr)[-1]->Dealloc (((Allocator **)ptr)-1);
}
};
};
class UsesAllocator
{
public:
void *operator new (size_t aSize,Allocator &aAllocator)
{
Allocator::Allocation *pResult =
(Allocator::Allocation *)
aAllocator.Alloc (aSize+sizeof (Allocator::Allocation));
if (!pResult) throw std::bad_alloc ();
pResult->m_pAllocator[0] = &aAllocator;
return pResult->m_pAllocator+1;
}
void *operator new [] (size_t aSize,Allocator &aAllocator)
{
Allocator::Allocation *pResult =
(Allocator::Allocation *)
aAllocator.Alloc (aSize+sizeof (Allocator::Allocation));
if (!pResult) throw std::bad_alloc ();
pResult->m_pAllocator[0] = &aAllocator;
return pResult->m_pAllocator+1;
}
void operator delete (void *ptr,Allocator &)
{ Allocator::Allocation::Dealloc (ptr); }
void operator delete (void *ptr)
{ Allocator::Allocation::Dealloc (ptr); }
void operator delete [] (void *ptr,Allocator &)
{ Allocator::Allocation::Dealloc (ptr); }
void operator delete [] (void *ptr)
{ Allocator::Allocation::Dealloc (ptr); }
};
...
class MyClass: /*virtual*/ public UsesAllocator
{
public:
...
};
...
MyClass *PROFIT = new (allocatorOfOurInterest) MyClass (...);
>посоны, я пишу собственную ММОРПГ
Все плюсисты, как мы уже когда то выяснили, - пидорасы.
_____________Отсюда вывод:
\/
ГЕЙдев.сру - отличное название для их сайта.
fixed
http://otvet.mail.ru/question/46797642/
http://otvet.mail.ru/question/18536334/
http://otvet.mail.ru/question/32640962/
Это все вы?
Или боты. Спалился и уже не первый раз.
ого. Ты наверное даже знаешь, чем UART от ком порта отличается?
Кстати, а ты знаешь, что кроме ios была еще catos?
Когда сиська купила производителя свитчей каталиста, там была своя ос, и немного другие команды.
Из похожего: на строительной технике Caterpillar красуется надпись CAT.
Да, роутинг свитчи (aka level 3 switchs в терминлогии сиси) могут делать несложный роутинг, потому они видны в трейсах иногда.
Роутинг это обычо:
1. узреть в ethernet кадре IP заголовок с DST
2. накласть нанего маску тупым AND
3. получить по табле маршрутизации (FIB или как оно там) адрес куда дальше слать
Причем это всё чуть ли не хардварно делалось
Всякую хитрую питушню вроде протоколов маршрутизации, стейтфуйл файрволов, сурс роутинга и манглинга свичи не умели.
Но правда так было цать лет назад. Может быть ща уже умеют
https://github.com/pubsubhubbub/wordpress-pubsubhubbub/blob/master/tests/test-functions.php
Сука, чо с этим людями не так??
Ведь написал же, закоммитил, программистом себя считает
ftfy
а потом нужо новый код писать, а потом еще один, и еще
А у меня некоторые коллеги тестов не пишут. Говорят, тесты тормозят, мигают, не решают всех проблем, все протстировать невозможно, их надо поддерживать, и вообще QA найдет баги, если они там есть, так зачем тратить время на тесты?
Я обычно лёд прикладываю
см историю про CARP, сицску, IETF, IANA и Тео конечно же Де Раата