![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
если на этапе компиляции тип возвращаемого значения у выражения понятен компилятору, то он вместо auto подставляет этот тип. если же компилятор не может определить тип (а в твоём случае он определяется на этапе выполнения), то компилятор выдаст ошибку на auto.
-------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| boostcoder |
|
||||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
а если ни одно не истинно, что возвращать?
тут должен возвращаться результат второго, если первое не истинно? а если ни одно не истинно, бросать исключение? в первом случае так же? Это сообщение отредактировал(а) boostcoder - 3.2.2012, 19:38 |
||||
|
|||||
| boostcoder |
|
||||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
вот что получилось:
http://liveworkspace.org/code/f72ac6a3004d...60bd21374ab273d результат препроцессирования:
т.к. не известно как поступать если ни одно из условий не верно, в макросы Ext_OR и Ext_AND добавил второй аргумент принимающий выражение. Это сообщение отредактировал(а) boostcoder - 3.2.2012, 21:51 |
||||
|
|||||
| newbee |
|
||||||
![]() Бревно ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 24.8.2011 Репутация: 4 Всего: 19 |
Конструктор по умолчанию.
Ну это же прекрасно!
Сейчас не в состоянии распарсить, утром попробую ) Конструктор по умолчанию. Спасибо, сейчас попытаюсь сконцентрироваться. Вариант с def тоже уместен. -------------------- You're face to face With man who sold the world |
||||||
|
|||||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
newbee,
вот еще направление, если я прально понял задачу : http://liveworkspace.org/code/962529beac6c...37a1ada28038e6e |
|||
|
||||
| newbee |
|
|||
![]() Бревно ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 24.8.2011 Репутация: 4 Всего: 19 |
Ууууух это вообще взрыв мозга))) Как это работает вообще не понятно)
AND как-то неправильно раскрывается... Добавлено через 9 минут и 53 секунды mes, спасибо большое, эта идея у меня была, но не придумала как побороть явное создание вспомогательных объектов... Все же подобная запись AND-OR интересна в первую очередь потому, что часто позволяет сильно сократить размер кода. Я обычно пользуюсь ленивостью || и && для записи условных выражений, но часто требуется получить значение выражения one || two || three, приходится писать лишний код... -------------------- You're face to face With man who sold the world |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
что тут не так? Добавлено через 2 минуты и 8 секунд по отдельности Ext_OR и Ext_AND работают как надо? |
|||
|
||||
| newbee |
|
|||
![]() Бревно ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 24.8.2011 Репутация: 4 Всего: 19 |
Я думаю, где-то скобок не хватает
Смотри, у тебя AND работает по-разному для AND(1,0) и AND(0,1), хотя в обоих случаях должен быть false (или значение по умолчанию, как сейчас сделано у тебя). Добавлено через 3 минуты и 59 секунд http://liveworkspace.org/code/972cca9cb2ab...74fa566a52388b9 -------------------- You're face to face With man who sold the world |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
||||
|
||||
| newbee |
|
|||
![]() Бревно ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 24.8.2011 Репутация: 4 Всего: 19 |
ЗЫ. Прикольный ты себе домен выбрал, уже скольок раз вижу, а кажется lispworks.com ))
ЗЫЫ Модераторы, пожалуйста исправьте заголовок: "помогитЕ", я когда вижу эту ошибку, хочу убить автора. -------------------- You're face to face With man who sold the world |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
это ты сама можешь сделать. "редактировать" на топике. Добавлено через 2 минуты и 35 секунд
ты тут не ошиблась? а то я сделал так, что возвращает результат последнего истинного выражения) |
|||
|
||||
| newbee |
|
|||
![]() Бревно ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 24.8.2011 Репутация: 4 Всего: 19 |
Заголовок не дает исправить, только текст...
Добавлено @ 00:50
Понимаешь, это тот же оператор AND по сути, только в случае успешной проверки (AND 1 2 3), возвращаем 3 вместо true, в случае неудачной (AND 1 0 2), возвращаем 0. Это сообщение отредактировал(а) newbee - 4.2.2012, 00:51 -------------------- You're face to face With man who sold the world |
|||
|
||||
| boostcoder |
|
||||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
вот:
http://liveworkspace.org/code/f35d3794bc73...ff02fba37c68e15 препроцессированный код:
все правильно? Это сообщение отредактировал(а) boostcoder - 4.2.2012, 01:26 |
||||
|
|||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
boostcoder, если я правильно понял, то
OR возвращает первое истинное, либо последнее если такого нет.. AND возвращает первое ложное, либо последнее если такого нет.. def не нужен |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
ну вроде как да... Добавлено @ 01:35 все равно не понимаю.. если не будет def, то что вернуть в случае лжи в следующем примере?
Это сообщение отредактировал(а) boostcoder - 4.2.2012, 01:38 |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |