Форум программистов, компьютерный форум CyberForum.ru

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Написать ответы на тестовое задание при приёме на работу (исключения, sizeof, mutex) http://www.cyberforum.ru/cpp-beginners/thread1629201.html
Добрый день! Ходил недавно на собеседование. Имеется список вопросов, на некоторые ответил правильно на какие-то - нет. Хотелось бы услышать мнение других людей как бы они решили поставленные задачи/вопросы, особенно интересует вопрос под номером 2 и его подробный разбор. Задачи решались без компьютера и подобных средств для проверки кода. Хотелось бы услышать именно ваши рассуждения, а...
C++ Написать программу "Будильник" Хочу сделать будильник. Пишу на C++ первый день, до этого практики не было. Как отключить динамик? Если он включается то уже больше не выключается. Вот код: #define BUZ 13 #define LDR A0 #define POT A1 void setup() { http://www.cyberforum.ru/cpp-beginners/thread1629192.html
Найти способ решения проблемы - функция setPixel() работает очень медленно (SFML) SFML
В sfml функция setPixel() работает очень медленно, можно-ли попиксельно редактировать изображение другим способом?
C++ Выделение памяти для строки
Почему размер строки первой 4 байта а второй 50 байт?Первая должна сколько же. #include <stdio.h> #include <Windows.h> #include <iostream> #include <string.h> using namespace std; int main() { char *name = new char; for (int i = 0; i < 50; i++)
C++ Не генерируется новое рандомное значение http://www.cyberforum.ru/cpp-beginners/thread1629173.html
Привет, когда я нажимаю на H (eng) в это программе, у меня не генерируется новое рандомное значение, а остается первое. Почему? И как это пофиксить? (Я хочу, чтобы в программе каждое нажатие H генерировало новое рандомное число от 1 до 100) Вот код: #include <iostream> #include <string> #include <random> #include <ctime> #include <conio.h> using namespace std;
C++ Создать таблицу, используя двумерные массивы Не получается создать таблицу,используя двумерные массивы.помогите пожалуйста! подробнее

Показать сообщение отдельно
hoggy
5230 / 2121 / 404
Регистрация: 15.11.2014
Сообщений: 4,812
Завершенные тесты: 1
31.12.2015, 01:44     Что такое side-effects
Цитата Сообщение от 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.
здесь нет определения термина "побочный эффект".
 
Текущее время: 13:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru