Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
239 / 212 / 84
Регистрация: 18.03.2010
Сообщений: 750
1

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

30.03.2014, 02:06. Показов 2693. Ответов 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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.03.2014, 02:06
Ответы с готовыми решениями:

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

тернарный оператор
объясните понятным языком что это такое в с++ и пояснение почему так //r=большее число из 2х...

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

Тернарный оператор if
так записать нельзя? void chek(comp* top) { comp* tmp = top, *tmp1, *last; last =...

3
90 / 90 / 48
Регистрация: 07.12.2011
Сообщений: 215
30.03.2014, 02:09 2
C++
1
 return (flag)? true : false;
а еще проще если флаг только true / false

C++
1
return flag;
1
148 / 139 / 18
Регистрация: 13.10.2012
Сообщений: 592
30.03.2014, 02:09 3
C++
1
return (flag ? true :  false);
1
15124 / 8122 / 1961
Регистрация: 30.01.2014
Сообщений: 13,806
30.03.2014, 02:29 4
Цитата Сообщение от jonson Посмотреть сообщение
Почему такой формат условного выражения для возврата значения из функции считается ошибкой?
Потому что результатом тернарного оператора должно быть значение некоего типа, которое является в свою очередь результатом вычисления одного из выражений, написанных в операндах тернарного оператора. Т.е. в нем допускаются только операции, которые такое значение вычисляют. Языковая операция return обеспечивает возврат значения, но сама по себе не типизирована. По такому же принципу не получится написать, например for или while в качестве операндов тернарного оператора.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.03.2014, 02:29

Вложенный тернарный оператор
Здравствуйте! Нужно вывести кол-во корней квадратного уравнения в зависимости от дискриминанта,...

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

Тернарный оператор и наследование
Добрый день! Почему не компилируется этот код: class A{ }; class B :public A { }; class...

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

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

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


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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