
Square
13.05.2016
14:07:40
А потом когда ногу прострелил - читать хелп

Andrey
13.05.2016
14:07:55

? Snyp
13.05.2016
14:08:44
Надо просто брать и юзать
Я тож так думаю, чувство продвинутости и упрощения в работе должны давать облегчение когда пишешь на новой версии лббимого языка.

Google

Andrei
13.05.2016
14:10:52
не совсем.
Нужно знать старое, чтобы знать причины по которым есть нвое.
тобы была логика эволюции языка

? Snyp
13.05.2016
14:11:17
Вот, поправьте лучше. Есть же позитивные стороны

Andrey
13.05.2016
14:11:43

? Snyp
13.05.2016
14:13:05
Как то так, глупо конечно)

Alex Фэils?︙
13.05.2016
14:14:11
В программировании ты всегда вечный нуб
даже через 50 лет
потому что все движется вперед

Andrey
13.05.2016
14:15:14
Кстати о новом. В c++14 есть auto return type. Зачем это надо?? Это же ужас!
auto find_id(const std::vector<record> &people,
const std::string &name)
{
auto match_name = [&name](const record& r) -> bool {
return r.name == name;
};
auto ii = find_if(people.begin(), people.end(), match_name );
if (ii == people.end())
return -1;
else
return ii->id;
}
У меня чувство, что люди хотят сделать так, чтобы для плюсов IDE вообще нельзя было написать.

Google

Andrei
13.05.2016
14:18:22
норм.

Andrey
13.05.2016
14:19:47
Слушайте, вот чем return auto может помочь? Не многое сваливается на компилятор?

Andrei
13.05.2016
14:20:21
Компилятор и так это делает.
Когда выдаёт тебе return type mismatch
Он всё равно вычисляет тип выражения в return-е
и сравнивает его с сигнатурой

? Snyp
13.05.2016
14:23:02
У меня мысля такая. Продолжать писать на плюсах за компилем, если например 14 версии на нем нет то хотя бы просто знать об этом..чтобы когда будешь писать уже на новой версии то ты уже знал об этом
.вспомнил по быстрому и практикой закрепил. Идеально и не надо заморачиваться

Alex Фэils?︙
13.05.2016
14:25:16
тут как в "Алисе в Зазеркалье": надо все время бежать, чтобы оставаться на месте
или эмулировать фишки XD

? Snyp
13.05.2016
14:25:44
Ыы)

Alex Фэils?︙
13.05.2016
14:25:47
тут в соседней ветке было про static_assert
идеальная реализация в итоге через шаблоны
вернее, даже не так
template<size_t N>

Andrei
13.05.2016
14:27:48
#define STATIC_ASSERT( x ) typedef int __STATIC_ASSERT__[( x )?1:-1]

Alex Фэils?︙
13.05.2016
14:27:48
блин
о, эпик вин
плохо, что срёт тайпдефом
у меня была идея через шаблон анонимный в do {}while(0);

Google

Andrei
13.05.2016
14:30:07
Зачем?

Andrey
13.05.2016
14:30:17
Всё-таки C++ - какашка(

Andrei
13.05.2016
14:30:25
Просто темплейтная структура.

Alex Фэils?︙
13.05.2016
14:30:25
?
ну да

Andrei
13.05.2016
14:30:32

Alex Фэils?︙
13.05.2016
14:30:41
анонимная шаблонная структура

Andrei
13.05.2016
14:30:42
у которой есть специализациядла <true>

Andrey
13.05.2016
14:30:46
Т.е. это - норм?)
#define STATIC_ASSERT( x ) typedef int __STATIC_ASSERT__[( x )?1:-1]
Но ладно.

Andrei
13.05.2016
14:30:56
Это не норм, это не надо.

Andrey
13.05.2016
14:31:03
Выбора, к сожалению, нет.

Andrei
13.05.2016
14:31:05
Просто однострочное решение.
Которое никто не будет использовать.
есть static_assert нормальный.
Всё.
Это рассуждения на тему, как бы это сэмулировать по-разному.

[Anonymous]
13.05.2016
15:53:10
Ребят, вот предположим я написал функцию, будет ли она выполнена, если я нигде ее не вызвал?

Alex Фэils?︙
13.05.2016
15:53:20
Нет

Google

[Anonymous]
13.05.2016
15:53:29
Ленивых же вычислений нет, значит хоть как выполнится?

Alex Фэils?︙
13.05.2016
15:53:53
почему нет

Andrei
13.05.2016
15:57:47
выполнена?
зачем ей выполняться?
нет.
и скомпилирована она даже вероятно не будет

[Anonymous]
13.05.2016
15:58:43
это работает с того момента как появились ленивые? с c++0x?
что-то я запутался

Admin
ERROR: S client not available

[Anonymous]
13.05.2016
16:00:38
кароче говоря если ленивые вычисления есть, то функция не будет выполнена до ее вызова, так?

Andrei
13.05.2016
16:02:39
Брр.
О чём ты вообще.

Aldar
13.05.2016
16:04:40
если ты определил функцию, но не вызвал, то она само собой не будет выполнена

[Anonymous]
13.05.2016
16:04:49
Предположим у нас написана функция, мы вызываем ее, чтобы получить значение и выводим ее через cout к примеру cout << pow(3, 2)
pow(3, 2) выполнится до cout?

Astroman
13.05.2016
16:05:45
Да, конечно

[Anonymous]
13.05.2016
16:05:57
ну вообще понятно что он так и так выполнится да
но он уже заранее выполнится или только после того как дойдет до cout?

Andrei
13.05.2016
16:06:41
зависит от компилятора и от процессора.

[Anonymous]
13.05.2016
16:06:51
фухх, тупые вопросы задаю наверное, уж простите но что-то я загнался

Google

Andrei
13.05.2016
16:07:07
pow(3,2) вообще компилятор заранее посчитает и подставит 9

[Anonymous]
13.05.2016
16:07:13
Ага

Andrei
13.05.2016
16:07:14
pow(i,2)
будет выплонено после вычисления i

[Anonymous]
13.05.2016
16:07:22
Т.е. еще до cout?

Aldar
13.05.2016
16:07:32
если у тебя идёт вызов функции с двумя аргументами, и эти аргументы в свою очередь тоже считаются через вызов функции, то порядок вызова этих функций не определён

Andrei
13.05.2016
16:07:45
Он не про это спрашивает.

Сергей
13.05.2016
16:08:12
Эта

Aldar
13.05.2016
16:08:12
С++ неленивый язык, поэтому все аргументы должны быть вычислены до вызова функции

Сергей
13.05.2016
16:08:17
Вопрос не в тему

[Anonymous]
13.05.2016
16:08:22
Так ленивый или нет?

Andrei
13.05.2016
16:08:27
Он не про аргументы, про саму функцию.

Сергей
13.05.2016
16:08:43
Бонус корутин в том, что ты сам управляешь временем выполнения, и все?

Andrei
13.05.2016
16:08:46
Что ты подразумеваешь под ленивостью?

Aldar
13.05.2016
16:09:01
« это и есть функция
перед тем как выполнить << надо посчитать pow

[Anonymous]
13.05.2016
16:09:28

Alex Фэils?︙
13.05.2016
16:09:54
функция выполняется когда ты ее вызываешь
Или прыгнешь в ее машинный код

[Anonymous]
13.05.2016
16:10:23
Если я не вызываю функцию, она не считается\выполняется заранее?