Появилась первая подборка нововведений планируемых к включению в C++14.
Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет
Здравствуйте, kaa.python, Вы писали:
KP>Появилась первая подборка нововведений планируемых к включению в C++14. KP>Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет
В основном, там библиотечные изменения (вполне разумные — полиморфные аллокаторы рулят). Языковых почти нет.
KP>Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет
Это вроде как старая приплюснутая традиция -- стандарты таки парами выходят
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Здравствуйте, kaa.python, Вы писали:
KP>Я, может быть, несколько старомоден, но мне ACE несравненно больше чем boost.asio нравится
неповоротливый монстр. фреймворк, одним словом.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
KP>Появилась первая подборка нововведений планируемых к включению в C++14. KP>Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет
Мне бы очень хотелось вот такого:
void foo(int n = 0, int k = 1, int m = 2);
foo(1,/*возможности пропускать аргумент по умолчанию*/,3);
И вот такого:
//foo.hstruct foo {
struct doo {
};
};
//another.h
// - форвардной декларации вложенных классовstruct foo::doo;
//для этогоclass some {
friend struct foo::doo; //теперь doo из foo друг класса some
}
Здравствуйте, niXman, Вы писали:
X>Здравствуйте, denisko, Вы писали:
D>>OpenMP тоже лишнее. X>это еще почему? оО
А нафига оно нужно на уровне языка? Мое мнение -- если что-то включается в язык C++, то в идеале программист должен представлять во что это скомпильнется с точностью до инструкции (пока не берем оптимизированный код, но и его надо уметь читать. В случае с OpenMP это практически невозможно, т.к. она классический черный ящик, который делает под капотом кучу небесплатной работы, и который со временем развивается. Та поддержка ее, которая есть сейчас имхо оптимальна, да и читать прагмы гораздо легче, чем очередной вариант for'a.
Здравствуйте, denisko, Вы писали:
D>А нафига оно нужно на уровне языка? Мое мнение -- если что-то включается в язык C++, то в идеале программист должен представлять во что это скомпильнется с точностью до инструкции (пока не берем оптимизированный код, но и его надо уметь читать. В случае с OpenMP это практически невозможно, т.к. она классический черный ящик, который делает под капотом кучу небесплатной работы, и который со временем развивается. Та поддержка ее, которая есть сейчас имхо оптимальна, да и читать прагмы гораздо легче, чем очередной вариант for'a.
а я хотел бы, чтоб у плюсов был пайтоновский синтаксис
так и с OMP и с Cilk+(который войдет в gcc-4.9.x). они упрощают достижение цели.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Здравствуйте, kaa.python, Вы писали:
KP>Появилась первая подборка нововведений планируемых к включению в C++14. KP>Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет
интроспекция нужна, хотя бы для параметров функций, чтобы можно было писать
void foo(A, B, C)
{
std::tuple<__arg_types__...> args{__arg_values__...};
}
как если бы это была
template<typename... __arg_types__> void foo(__arg_types__... __arg_values__);
и еще бы хорошо иметь decltype(return) для получения возвращаемого типа функции как в D
-----
и еще конструктор/деструктор переименовать в this и ~this
эх, мечты, мечты...
Здравствуйте, niXman, Вы писали:
X>Здравствуйте, Abyx, Вы писали:
A>>а что в ASIO не продумано? X>не искаропки =)
зато header-only.
#include <asio.hpp>
и готово
Здравствуйте, Abyx, Вы писали:
A>и еще конструктор/деструктор переименовать в this и ~this A>эх, мечты, мечты...
Вот что на самом деле было бы круто, так это возможность иметь именованные конструкторы.
Что бы конструктор можно было выьирать не только перегрузкой, но и явным именем.
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Здравствуйте, Abyx, Вы писали:
A>а что в ASIO не продумано?
ASIO — это не более чем часть BOOST. ACE, как было верно подмечено выше, это полноценный фрэймворк, который по ряду функций превосходит BOOST. Так, к примеру, при работе с ACE у тебя сразу решены такие мелочи как логирование, TLS (этот вопрос вроде отпал с C++11), межпроцессное взаимодействие (в виде TAO, т.е. CORBA), пул потоков, нормальный Proactor (тут не могу утверждать на все сто, но год-два назад ASIO лишь эмулировал Proactor на синхронном I/O).
Здравствуйте, Erop, Вы писали:
E>Вот что на самом деле было бы круто, так это возможность иметь именованные конструкторы. E>Что бы конструктор можно было выьирать не только перегрузкой, но и явным именем.
для этого есть теги
разница между
Foo(Tag);
FooTag();
не велика,
те же самые символы, только в другом порядке
Здравствуйте, Abyx, Вы писали:
A>и еще бы хорошо иметь decltype(return) для получения возвращаемого типа функции как в D
В каких ситуациях используется? вообще в ++11 уже есть такая порнография
auto func(arg1 val, arg2 val2)->decltype(val)
auto func(arg1 val, arg2 val2)->Traitor<decltype(arg1)>::value_type