Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.139.86.56] |
|
Страницы: (16) « Первая ... 3 4 [5] 6 7 ... 15 16 все ( Перейти к последнему сообщению ) |
Сообщ.
#61
,
|
|
|
То есть ты сначала сделал сделал логический вывод из своих слов и слов D_KEY, потом выдрал из этого вывода слово "всегда" и начал яростно придираться к нему?
Самое забавное, что обсуждаемая деталь реализации крайне малозначительна и не должна быть критерием выбора или отказа от какого-либо языка. |
Сообщ.
#62
,
Сообщение отклонено: JoeUser -
|
Сообщ.
#63
,
|
|
|
Цитата applegame @ То есть ты сначала сделал сделал логический вывод из своих слов и слов D_KEY, потом выдрал из этого вывода слово "всегда" и начал яростно придираться к нему? Неа. Дело было не так Я сперва привел два примера кода - на с++ и на расте. Потом D_KEY свой пример привел на С++, но с виртуальными функциями. На что я указал, что код не совсем эквивалентный коду на расте. И только потом было сообщение 21 ... ну и понеслась. |
Сообщ.
#64
,
|
|
|
Очередной ура-фанатик бьется грудью за новую самую-пресамую лучшую игрушку. Коммьюнити радостно поддерживает Фанатик трет посты оскорбляющие его нежные чувства
! Хватит флудить! Твое отличные шутки здесь не нужны. Лучше по теме пиши ченить. |
Сообщ.
#65
,
|
|
|
Цитата JoeUser @ Я сперва привел два примера кода - на с++ и на расте. Потом D_KEY свой пример привел на С++, но с виртуальными функциями. А в твоем примере виртуальных функций не было? Я, если что, просто его подправил в части наследования. Добавлено #include <iostream> using namespace std; struct A { int a; A(int x); void print() const; }; struct B { A a; int b; B(int x, int y); void print() const; }; struct C { B b; int c; C(int x, int y, int z); void print() const; }; A::A(int x):a(x) { } void A::print() const { cout << a << endl; } B::B(int x, int y):a(x),b(y) { } void B::print() const { a.print(); cout << b << endl; } C::C(int x, int y, int z):b(x,y),c(z) { } void C::print() const { b.print(); cout << c << endl; } template<typename T> void print(const T &x) { x.print(); } int main() { C c = {1,2,3}; print(c); return 0; } |
Сообщ.
#66
,
|
|
|
Цитата D_KEY @ А в твоем примере виртуальных функций не было? Цитата JoeUser @ Посыпаю голову пепломъ В посте с кодом С++ и Rust - я привел первый вариант (с виртуальными функциями), а в ссылке на он-лайн компилятор - привел код без них! Уффф |
Сообщ.
#67
,
|
|
|
JoeUser, планируешь на rust написать что-нибудь?
|
Сообщ.
#68
,
|
|
|
Цитата D_KEY @ JoeUser, планируешь на rust написать что-нибудь? Да. Но чую - не скоро! Только-только дочитал книжку. Мозги набекрень, надо еще разок прочесть и переварить, ибо С++ подход (а еще ранее Turbo Pascal 5.5, Virtual Pascal, Дельфи, отчасти ООП щляпы Perl) не отпускает! Почему, собственно заинтересовался растом ... Помнится я создавал как-то тему на тему "WebApplication на С++". Потом почитал, посмотрел бэнчмарки, и люто меня заинтересовали две штуки: Второй фреймворк ваще был 5 место занимал в тестах из 40-50 либ на различных языках. Естественно первые три - на чистых Сях. А когда-то найденный мною фрэймворк на С++ TreeRrog - был в конце двадцатки. Вот и подумалось мне - а не глянуть ли мне раст Добавлено ЗЫ: Кстати ... ты случаем не видел шаблонов, а ля Хелло Ворлд для сборки на раст следующего: 1) программа-сервис винды 2) программа-демон *nix' 3) библиотеки динамической линковки .dll и .so ? |
Сообщ.
#69
,
|
|
|
Цитата JoeUser @ Интересуйся обратно Плюсовой фреймворк (веб в том числе) ULib в большинстве бенчмарков уделывает tokio. Почему, собственно заинтересовался растом ... Помнится я создавал как-то тему на тему "WebApplication на С++". Потом почитал, посмотрел бэнчмарки, и люто меня заинтересовали две штуки: |
Сообщ.
#70
,
|
|
|
applegame, видел я его - пусть он и самый быстрый (а по сути там сущие копейки выигрыша по сравнению с Actix).
Я просто перечислю тебе "избранное" из одного из файлов примеров. Насладись современным C++: // HttpHeader.cpp U_TRACE(5, "HttpHeader::count(%.*S)", U_STRING_TO_TRACE(name)) U_RETURN(j); U_TRACE(5, "HttpHeader::add(%p,%d)", field, index) U_INTERNAL_ASSERT_POINTER(field) U_RETURN_POINTER(old, HttpField); U_RETURN_POINTER(U_NULLPTR, HttpField); U_RETURN_POINTER(field, HttpField); U_TRACE(5, "HttpHeader::find(%.*S,%d)", U_STRING_TO_TRACE(name), index) U_RETURN_POINTER(header[i], HttpField); U_RETURN_POINTER(U_NULLPTR, HttpField); U_TRACE(5, "HttpHeader::del(%.*S,%d)", U_STRING_TO_TRACE(name), index) U_VEC_ERASE1(header, i); U_RETURN_POINTER(field, HttpField); U_RETURN_POINTER(U_NULLPTR, HttpField); U_TRACE(5, "HttpHeader::del(%p)", field) U_VEC_ERASE1(header, i); U_RETURN_POINTER(field, HttpField); U_RETURN_POINTER(U_NULLPTR, HttpField); U_TRACE(256+5, "HttpHeader::stringify(%.*S)", U_STRING_TO_TRACE(field)) U_INTERNAL_DUMP("f = %p", f) U_INTERNAL_DUMP("field = %.*S", U_STRING_TO_TRACE(field)) U_TRACE(5, "HttpHeader::clear()") U_INTERNAL_DUMP("f = %p", f) U_DELETE(f) return U_NULLPTR; В гробу я видал такое читать. |
Сообщ.
#71
,
|
|
|
это больше похоже на древний C++, а на современный.
Добавлено Посмотрел на actix. Какая-то убогая пародия на erlang/elixir И таки, ты наверное имеешь в виду не сам actix, а actix-web. |
Сообщ.
#72
,
|
|
|
Цитата applegame @ не сам actix, а actix-web. Ага. Добавлено Цитата applegame @ это больше похоже на древний C++, а на современный Qt - де жа вю |
Сообщ.
#73
,
|
|
|
Цитата applegame @ Какая-то убогая пародия на erlang/elixir Убогая - не убогая, а 6-е место в бенчах. Мне там в коде не копаться N-лет. Знаю точно! "Наследование типажей" уже меня загнало под плинтус И разорвало в клочья всю мою концепцию православного мира. Вот сейчас зашел ко мне Jack Daniel's - сидим и обсуждаем как жЫть дальше! |
Сообщ.
#74
,
|
|
|
Цитата JoeUser @ "Наследование типажей" уже меня загнало под плинтус И разорвало в клочья всю мою концепцию православного мира. А что с ним не так? Это же точь-в-точь наследование интерфейсов из привычных языков программирования. Ну, почти - я не помню, есть ли возможность в явошарпах написать аналог какого-нибудь Clone, но не сказал бы, что это прямо-таки концептуальное отличие. |
Сообщ.
#75
,
|
|
|
Цитата OpenGL @ А что с ним не так? Это же точь-в-точь наследование интерфейсов из привычных языков программирования. Ну, почти - я не помню, есть ли возможность в явошарпах написать аналог какого-нибудь Clone, но не сказал бы, что это прямо-таки концептуальное отличие. Я не знаю что такое Интерфейсы. В классическом С++ этого тет. Явашарпы я презираю есличо. Такова се ля ви. |