С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Что такое side-effects - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать ответы на тестовое задание при приёме на работу (исключения, sizeof, mutex) http://www.cyberforum.ru/cpp-beginners/thread1629201.html
Добрый день! Ходил недавно на собеседование. Имеется список вопросов, на некоторые ответил правильно на какие-то - нет. Хотелось бы услышать мнение других людей как бы они решили поставленные...
C++ Написать программу "Будильник" Хочу сделать будильник. Пишу на C++ первый день, до этого практики не было. Как отключить динамик? Если он включается то уже больше не выключается. Вот код: #define BUZ 13 #define LDR A0... http://www.cyberforum.ru/cpp-beginners/thread1629192.html
C++ Выделение памяти для строки
Почему размер строки первой 4 байта а второй 50 байт?Первая должна сколько же. #include <stdio.h> #include <Windows.h> #include <iostream> #include <string.h> using namespace std; int main() {...
Не генерируется новое рандомное значение C++
Привет, когда я нажимаю на H (eng) в это программе, у меня не генерируется новое рандомное значение, а остается первое. Почему? И как это пофиксить? (Я хочу, чтобы в программе каждое нажатие H...
C++ Создать таблицу, используя двумерные массивы http://www.cyberforum.ru/cpp-beginners/thread1629159.html
Не получается создать таблицу,используя двумерные массивы.помогите пожалуйста!
C++ Создать класс Polynomial, реализующий многочлен одной переменной Создать класс Polynomial, реализующий многочлен одной переменной. Класс дол- жен содержать удобный инициализатор, перегрузку оператора для доступа к коэффициентам, оператор копирования =, оператор... подробнее

Показать сообщение отдельно
hoggy
6728 / 2913 / 499
Регистрация: 15.11.2014
Сообщений: 6,550
Завершенные тесты: 1
31.12.2015, 01:44
Цитата Сообщение от rikimaru2013 Посмотреть сообщение
тогда как компилятор не смог увидить перегрузки для if(a++ && b++ && c++) {}
и соптимизировать код. На этапе компиляции - все поведения определены
вопрос не понятен.

если на этапе компиляции единицы трасляции,
компилятору был доступен контекст,
значит он использовал эту информацию.

в данном случае имеет место быть ленивым вычислениям:
Код
если a ---> true тогда вычислить следующее выражение
++a
если у вас там операторы инкремента перегружены - ну значит там своя логика.
вопрос лишь в том - доступна ли она компилятору.
и включены ли режимы оптимизации его работы.

Добавлено через 4 минуты
Цитата Сообщение от ct0r Посмотреть сообщение
ты тут ошибаешься. Нет такого понятия как "побочные эффекты с точки зрения компилятора".
вы просто вдумайтесь: "понятие с точки зрения компилятора".
как бе понятно, что это именно что понятие,
а не формальная терминология.

и это понятие существует для того,
что бы можно было понять сабж.

Цитата Сообщение от ct0r Посмотреть сообщение
Reading an object designated by a volatile glvalue (3.10), modifying an object, calling a library I/O
function, or calling a function that does any of those operations are all side effects, which are changes in the
state of the execution environment.
здесь нет определения термина "побочный эффект".
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.