вторник, 22 ноября 2011 г.

SyntaxHighlighter для блога

Настроил syntaxhighlighter теперь при переключении вкладок "Создать" и "HTML" данные о подсветке не теряются + можно более менее легко править исходники
#include <iostream>
void main()
{
  //hey, look at this
  std::cout << "Hello World!";
}

пятница, 18 ноября 2011 г.

Особенности использования shared_ptr и RefCounter

Бредисловие
Думаю каждый программист слышал или использовал shared pointers и встречался с идиомой ref counter для разделяемых ресурсов. По отдельности их использование не представляет сложности и опасности, но что может быть если совместить их вместе?

А как все начиналось...
Предположим мы расширяем существующий функционал программы. Архитектура программы содержит в себе некий "промежуточный" слой service, который состоит из классов-менеджеров. Т.е. для записи файла на CD есть класс CdWriterManager, для записи файлов на расшаренные папки ShareWriterManager и прочие. И вот нам дают задание написать класс для записи файлов на FTP.