Оптимальное проектирование
От: JakeS  
Дата: 07.09.06 10:17
Оценка:
std::string s;
Coder<ucs2>(ws).encode<utf8>(s);

std::string s = utf8(new ucs2(ws)).c_str();

std::string s = encode(ws, new ucs2, new utf8);

std::string s = Coder(new ucs2(ws)).encode(new utf8);


преобразование строк в from/to разные кодировки.

Что является более оптимальным (не по перфомансу а в общем.)
каждая строчка подразумевает совершенно определенную реализацию
1) шаблоны (причем не очень хорошие — функций)
2) наследование интерфейса + конструкторы копирования
3) наследование интерфейса + наменьшая связанность кода
4) гибрид 1+2 без шаблонов и копирования, но наследование от базового функционального класса
5) наверное можно чтото еще придумать..

мне кажется что с точки зрения правильного проектирования вариант 3 оптимален.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.