четверг, 23 октября 2008 г.

Жесть рулонная...

while (got_clicks && zd->req_id.natural() == cur_req_id && calc (zd->block_id, zd->blockid_len, cur_b_id) == 0 && calc (zd->link_id, zd->linkid_len, cur_l_id) == 0
  || got_pages && zd->req_id.natural() == cur_req_id && calc (zv->block_id, zv->blockid_len, cur_b_id) == 0 && calc (zv->link_id, zv->linkid_len, cur_l_id) == 0)
{
  if (got_clicks && zd->req_id.natural() == cur_req_id && calc (zd->block_id, zd->blockid_len, cur_b_id) == 0 && calc (zd->link_id, zd->linkid_len, cur_l_id) == 0
    && (!got_pages
      || zv->req_id.natural() != cur_req_id
      || calc (zv->block_id, zv->blockid_len, cur_b_id) != 0
      || calc (zv->link_id, zv->linkid_len, cur_l_id) != 0
      || zd->time_clicked.natural() < zv->time_clicked.natural()) )
  {
    // ...
  }
}

понедельник, 20 октября 2008 г.

Разрыв мозга

// 1.

struct SomeStruct;
SomeStruct * ptr;

// 2.

struct SomeStruct * ptr;

Внимание, вопрос: в чём разница между этими двумя выражениями. Речь идёт о C++ (не о C).

четверг, 16 октября 2008 г.

// No comments...

A & a( *( new A() ) );

a.doSmth();
...

delete &a;