Позднее Ctrl + ↑

Перегрузка пробела

Как бы я не ненавидел C, Страуструп всё-таки крутой перец.

Лирическое отступление. Так вышло, что в среду мне надо будет читать лекцию по перегрузке операторов в C++. Сейчас я ищу разную информацию по этой теме. Вообще, help wanted (and appreciated), поэтому если кто-то знает, где есть что-то не самое банальное, то он может смело со мной своими знаниями поделиться.

Как просто перегрузить плюс и минус понятно всем. Вопрос в том, как (и зачем) можно перегрузить операторы вроде −> или []. Интересно, можно ли (и что за это будет) написать

virtual Complex operator + (Complex a, Complex b) {
return Complex (a.Re + b.Re, a.Im + b.Im);
}

или даже

virtual Complex operator + (Complex a, Complex b) = 0;

Конец лирического отступления.

Я нашел очень интересную статью Страуструпа (PDF, 32 KB) про перегрузку оператора пробел и даже оператора отсутствие пробела, чтобы можно было писать

int a, b, t;
t = ab;

23

Теперь у меня самая длинная серия — 23 очка. А еще я сегодня впервые обыграл отца.

Посмотрел Матрицу

Дак получается, что вторая часть круче была. Не знаю уж, сколько бабок они вложили в спецэффекты третьей... но во второй и они были круче. Ну, я так считаю.

А еще эпизод с кошкой клёвый был, этого нельзя не признать. Особенно, когда раздолбанный пол стал... э... нераздолбанным. Вот.

Arrays as keys of arrays

Sometimes you need to associate an array with some kind of value, so you want to do the following:

$a = array (
  array (...) => 'good_array',
  array (...) => 'big_array',
  array (...) => 'green_array'
);

But this is not possible. While you cannot use an array as a key of another array, you still can do this:

$a = array (
  serialize (array (...)) => 'good_array',
  serialize (array (...)) => 'big_array',
  serialize (array (...)) => 'green_array'
);

That’s because serialize() returns strings, which can be a keys of an array. Now if you want to know, whether array $b is good, big or green, you can just do the following:

echo $a[serialize ($b)];

Впервые опубликовано мной на PHP.net в user contributed notes, поэтому english

CSS

Статья Making the Absolute, Relative о том как сделать абсолютное относительным (смайлик).

Update: Чем занимаются больные люди в свободное время.

Update 2: Больше смысла в XHTML, больше внешнего вида в CSS. Автор пишет:

I find that most pages on the web contain a menu of links in a navigation area. These are often marked up as a string of links, often in separate DIVs or paragraphs. Structurally, however, they are a list of links, and should be marked up as such.

Update 3: Еще одна статья, на этот раз с русским переводом от Webmascon.com, о том, как не делать версию для печати, а обойтись умным CSS. Я сам это давно придумал, только вот не реализовал. Если воспользоваться небольшим серверным скриптом, то это можно сделать без свойства content, которое не поддерживается IE.

Update 4: Еще можно хорошо повеселиться, организовав закладки вместо простого списка ссылок. При этом HTML остается чистым списком ссылок (UL LI A)

Ранее Ctrl + ↓