Или независимые управляемые формы графического интерфейса.


Типизированный язык программирования
StringMessage* str_message = ...;
send(my_message);
...
void handle_message(const Message* message) {
assert(message);
const StringMessage* str_message = dynamic_cast<const StringMessage*>(message);
assert(str_message);
std::cout << str_message->message ...
}
void handle_message(const StringMessage& message) {
...
}
template <class T>
bool someFunc(T t)
{
if (t.someCheck()) {
t.someAction(0);
}
}
std::multiset<int> set0, set1;
for (auto it = set0.begin(); it != set0.end(); ++it) {
// длинная
// обработка
// *it
}
for (auto it = set1.rbegin(); it != set1.rend(); ++it) {
// длинная
// обработка
// *it
}
#include ".//.//.//.//jeh.cpp"
#include "jeh.cpp"
`