Re[18]: Перегрузка == героин?
От: Павел Кузнецов  
Дата: 11.08.05 13:19
Оценка: +1
Quintanar,

> нельзя реализовать + от аргументов разных типов.


Это странный тезис. Для тех же векторов в линейной алгебре определяют умножение на число. И матрицу можно умножить на вектор (при определенных условиях)...
Posted via RSDN NNTP Server 2.0 beta
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
Re[20]: Перегрузка == героин?
От: adontz Грузия http://adontz.wordpress.com/
Дата: 11.08.05 17:32
Оценка:
Здравствуйте, _vovin, Вы писали:

_>Сложение чисел отлично ложится на операцию + (Number, Number). Для частных случаев может быть создана специализация (например + (int, int)), для остальных — двойная диспетчеризация с последующим приведением чисел к одному вышестоящему общему типу.


Дааа.... представил себе как это всё будет понятно и эффективно
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[10]: Перегрузка == героин?
От: pvgoran Россия  
Дата: 12.08.05 14:39
Оценка: :)
Здравствуйте, VladD2, Вы писали:

VD>В общем, пусть любой кинет в меня камень если он способен не понять кострукцию "строка 1 " + "строка 2".


Сейчас компиляторы C++ камнями ка-ак закидают!
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[10]: Перегрузка == героин?
От: pvgoran Россия  
Дата: 12.08.05 14:39
Оценка:
Здравствуйте, adontz, Вы писали:

A>Диагноз из психбольницы какой-то Так и представляю себе программиста перегружающего + для сортировки. Эдакое

A>
A>vector<int> array1;
A>...
A>vector<int> array2 = array1 + quick_sort_tag;
A>

A>Ужас
A>Где он таких только нашёл?

А что — интересная идея! Мне понравилось!
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[2]: Перегрузка == героин?
От: pvgoran Россия  
Дата: 12.08.05 14:39
Оценка: +1 :)))
Здравствуйте, jazzer, Вы писали:

J>А статья, на мой взгляд, абсолютно пустая и времени, на нее потраченного, не стоит


Зато какое обсуждение!
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[10]: Перегрузка == героин?
От: Andir Россия
Дата: 13.08.05 10:18
Оценка:
Здравствуйте, eao197, Вы писали:

E>Справедливости ради можно добавить, что в зависимости от левого операнда оператора сдвига выполняемое действие может очень сильно меняться:

E>

E>// Вычисляем MD5-хеш двоичного образа.
E>Md5_Hash hash;
E>hash << my_data;
E>


А насчёт MD5 это просто по принципу или существует где-нибудь такая реализация криптографических примитивов?

C Уважением, Andir!
using( RSDN@Home 1.2.0 alpha r597 ) { /* Работаем */ }
Re[11]: Перегрузка == героин?
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 13.08.05 11:17
Оценка: 14 (1)
Здравствуйте, Andir, Вы писали:

E>>
E>>// Вычисляем MD5-хеш двоичного образа.
E>>Md5_Hash hash;
E>>hash << my_data;
E>>


A>А насчёт MD5 это просто по принципу или существует где-нибудь такая реализация криптографических примитивов?


Просто по принципу, сам я таких готовых вещей для MD5 не видел.
Хотя, вот например, такая цитата из tutorial по библиотеке Botan:

First, some notation. The passphrase is stored as a std::string named passphrase. The input and
output files (infile and outfile) are of types std::ifstream and std::ofstream (respectively).

3.1.1 First try

We hash the passphrase with SHA-1, and use the resulting hash to key Blowfish. To generate the IV, we
prepend a single ’0’ character to the passphrase, hash it, and truncate it to 8 bytes (which is Blowfish’s block
size).

HashFunction* hash = get_hash("SHA-1");

SymmetricKey key = hash->process(passphrase);
SecureVector<byte> raw_iv = hash->process(’0’ + passphrase);
InitializationVector iv(raw_iv, 8);

Pipe pipe(get_cipher("Blowfish/CBC/PKCS7", key, iv, ENCRYPTION));

pipe.start_msg();
infile >> pipe;
pipe.end_msg();
outfile << pipe;


Сам я с Botan не работал (просто раньше столкнулся с Crypto++ и переходить на что-то другое уже смысла не было), может там еще чего похожее есть. Или же можно сделать:
class My_Data { ... };

Botan::Pipe &
operator<<( Botan::Pipe & pipe, const My_Data & d )
    {
        ...
        return pipe;
    }
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.