Форум программистов, компьютерный форум 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
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++
Привет, когда я нажимаю на H (eng) в это программе, у меня не генерируется новое рандомное значение, а остается первое. Почему? И как это пофиксить? (Я хочу, чтобы в программе каждое нажатие H генерировало новое рандомное число от 1 до 100) Вот код: #include <iostream> #include <string> #include <random> #include <ctime> #include <conio.h> using namespace std;
C++ Создать таблицу, используя двумерные массивы http://www.cyberforum.ru/cpp-beginners/thread1629159.html
Не получается создать таблицу,используя двумерные массивы.помогите пожалуйста!
C++ Создать класс Polynomial, реализующий многочлен одной переменной Создать класс Polynomial, реализующий многочлен одной переменной. Класс дол- жен содержать удобный инициализатор, перегрузку оператора для доступа к коэффициентам, оператор копирования =, оператор сложения + и вычитания −, а также метод, дающий по числу a разложение исходного многочлена по степеням (x − a). подробнее

Показать сообщение отдельно
hoggy
6368 / 2586 / 451
Регистрация: 15.11.2014
Сообщений: 5,714
Завершенные тесты: 1
31.12.2015, 01:18     Что такое side-effects
Цитата Сообщение от rikimaru2013 Посмотреть сообщение
вызов другого метода в методе является side-effect'ом?
да, если компилятор не имеет возможности узнать, что внутри этого метода.

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

если не доступен, то он должен сделать вызов,
не зная к чему это приведет.
это "не знание" и есть "побочный эффект" с точки зрения компилятора.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru