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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
jonson
232 / 205 / 61
Регистрация: 18.03.2010
Сообщений: 750
#1

Тернарный оператор: возврат значения - C++

30.03.2014, 02:06. Просмотров 333. Ответов 3
Метки нет (Все метки)

Приветствую.
При компиляции ниже приведенного кода
C++ (Qt)
1
2
3
4
5
6
7
8
9
bool MyFunc()
{
    bool flag = false;
 
    // .... некоторые действия
    // ....
 
    (flag) ? return true : return false;
}
получаю ошибку: error C2059: синтаксическая ошибка: return
Почему такой формат условного выражения для возврата значения из функции считается ошибкой?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.03.2014, 02:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Тернарный оператор: возврат значения (C++):

Тернарный оператор vs if/else - C++
Зачем? Ведь, так элегантнее. Начало http://www.cyberforum.ru/cpp-beginners/thread718192.html

Тернарный оператор - C++
Добрый день, как доказать, что нету тенарного оператора ? Я как понимаю, есть только тенарная операция, которая представляет...

Засунуть в тернарный оператор - C++
Помогите засунуть выражение if ( (i < 0 || j < 0) || (i >= ROW || j >= COL) || (i == oi && j == oj)) continue; else if (arr)...

Альтернатива if (.) {.} (тернарный оператор) - C++
блин запамятовал как это делается пишут вместо стандартной формы что то типа y < x : x = m напомните плиз как это называется, какие там...

Шахматы(заменить тернарный оператор) на if else - C++
#include <iostream> #include <Windows.h> using namespace std; void main() { int h, w, i, j; cout << "Введите...

Как работает тернарный оператор - C++
Здравствуйте. Объясните, пожалуйста, что значит эта строка color = (color == 'W') ? 'B' : 'W';

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Wlk
49 / 49 / 13
Регистрация: 07.12.2011
Сообщений: 133
30.03.2014, 02:09 #2
C++
1
 return (flag)? true : false;
а еще проще если флаг только true / false

C++
1
return flag;
1
MastAKK
145 / 136 / 12
Регистрация: 13.10.2012
Сообщений: 587
30.03.2014, 02:09 #3
C++
1
return (flag ? true :  false);
1
DrOffset
7158 / 4299 / 972
Регистрация: 30.01.2014
Сообщений: 7,107
30.03.2014, 02:29 #4
Цитата Сообщение от jonson Посмотреть сообщение
Почему такой формат условного выражения для возврата значения из функции считается ошибкой?
Потому что результатом тернарного оператора должно быть значение некоего типа, которое является в свою очередь результатом вычисления одного из выражений, написанных в операндах тернарного оператора. Т.е. в нем допускаются только операции, которые такое значение вычисляют. Языковая операция return обеспечивает возврат значения, но сама по себе не типизирована. По такому же принципу не получится написать, например for или while в качестве операндов тернарного оператора.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.03.2014, 02:29
Привет! Вот еще темы с ответами:

Тернарный оператор и операторы безусловного перехода - C++
Здравствуйте, может кто-нибудь объяснить, почему не компилируется оператор ?, если в одной из последующих частей стоит break, return,...

Тернарный оператор - найти ошибку в коде - C++
Не пойму почему выдает ошибку, вроде программы самые простые и ошибиться то негде: #include<iostream> using namespace std; int main()...

Является ли тернарный оператор оператором сравнения? - C++
Является ли тернарный оператор оператором сравнения? Подскажите пожалуста

Тернарный оператор и множество ошибок в коде - C++
Вот задание: И простой код: #include<iostream> using namespace std; int main() { int n,k; cin>>n; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
30.03.2014, 02:29
Ответ Создать тему
Опции темы

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