|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 24
|
|
Можно ли сравнивать потоки?02.03.2012, 05:39. Показов 6225. Ответов 41
Метки нет (Все метки)
А точнее, проверять их на равенство? Скажем, допустимо ли в перегруженном операторе ввода использовать конструкцию if (stream == cout), и будет ли она корректно работать?
0
|
|
| 02.03.2012, 05:39 | |
|
Ответы с готовыми решениями:
41
Можно ли сравнивать строковые литералы? как правильно это сделать? Как можно сравнивать в структуре числа и выводить на экран по возрастанию, если структура находится в файле? О потоках std::thread: можно ли вложить потоки друг в друга и можно ли создать динамический массив потоков? |
|
40 / 40 / 7
Регистрация: 21.02.2012
Сообщений: 95
|
|
| 02.03.2012, 13:20 | |
|
Nameless One, что? если один поток фэйл они точно будут не равны даже если одного типа.
если оба потока гуд - то вернется this дочернего класса который подставится в сравнение
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||
| 02.03.2012, 13:25 | ||
|
Luke, где гарантии, что у других компиляторов (или на другой платформе) или у новой версии MinGW будет точно такое же поведение?
0
|
||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|||||||
| 02.03.2012, 13:28 | |||||||
|
Вот тебе пример:
Ну и еще раз цитата из стандарта:
0
|
|||||||
|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 24
|
||||||||||||
| 02.03.2012, 13:49 [ТС] | ||||||||||||
Текущий вариант функций:
0
|
||||||||||||
|
40 / 40 / 7
Регистрация: 21.02.2012
Сообщений: 95
|
||
| 02.03.2012, 14:01 | ||
|
речь шла о сравнении потоков, по какому признаку они сравнивались в языке - другой вопрос. я привел пример с this, если в НОВОМ стандарте возврат this не гарантирован значит вернется некий "другой" уникальный идентификатор, по которому и пройдет сравнение. ну а для системы они в любом случае 2 разных потока и вряд ли язык в какой либо реализации станет противоречить этому
0
|
||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|||
| 02.03.2012, 14:06 | |||
|
0
|
|||
|
40 / 40 / 7
Регистрация: 21.02.2012
Сообщений: 95
|
||
| 02.03.2012, 14:13 | ||
|
Nameless One,
про уникальность идентификатора потока..ну например в API твоей системы. а тебя послушать так язык с его библиотекой будет противоречить устройству той системы на которой будет запускаться, давая идентичные идентификаторы для разных потоков и делая невозможных их различение. проведи тест. посмотри что в регистрах при сравнениях будет
0
|
||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|||
| 02.03.2012, 14:17 | |||
|
0
|
|||
|
40 / 40 / 7
Регистрация: 21.02.2012
Сообщений: 95
|
||
| 02.03.2012, 14:20 | ||
|
что в "старом" стандарте при операции сравнения дергался operator void*(), возвращавший либо 0 либо this регистры при том, что там ты увидишь искомое значение, которое поможет тебе понять чем отличается cin от cout при их сравнении через ==
0
|
||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|||||||||||
| 02.03.2012, 14:20 | |||||||||||
|
Kravensky, А чего б тебе не попробовать такой код
Вообще, если б это был просто Си, я бы ответил ДА.
0
|
|||||||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||
| 02.03.2012, 14:29 | ||
|
1
|
||
|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 24
|
|
| 02.03.2012, 14:31 [ТС] | |
|
Байт, я ж в первоначальном варианте пробовал. Но, судя по прошлым постам темы, большинство сходится в том, что так делать нельзя. И, так как я сейчас на эксперименты не настроен, предпочитаю более понятный лично мне метод - перегрузку. Но как перегрузить на конкретный параметр, я не знаю.
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 02.03.2012, 14:32 | |
|
1
|
|
|
40 / 40 / 7
Регистрация: 21.02.2012
Сообщений: 95
|
|||||||
| 02.03.2012, 14:44 | |||||||
|
Kravensky,
2
|
|||||||
|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 24
|
||||||
| 02.03.2012, 14:54 [ТС] | ||||||
|
Luke, дык в c++ потоки не указателями реализуются, вроде. А классами.
0
|
||||||
|
40 / 40 / 7
Регистрация: 21.02.2012
Сообщений: 95
|
|
| 02.03.2012, 14:58 | |
|
0
|
|
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|||||||
| 02.03.2012, 15:06 | |||||||
Если я не прав, пусть товарищи меня поправят.
1
|
|||||||
|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 24
|
|
| 02.03.2012, 15:07 [ТС] | |
|
BRcr, не помогло, к сожалению.
0
|
|
|
|
|
| 02.03.2012, 15:12 | |
|
Kravensky, если вам надо только cout и еще какой-то один поток отличать, тогда сравнение по адресу cout, как предложил Luke, является, пожалуй, простейшим вариантом.
1
|
|
| 02.03.2012, 15:12 | |
|
Switch. Можно ли сравнивать строки? Как можно сравнивать 2 файла по названию Можно ли сравнивать два метода, вычисляющих площадь?
Как можно сравнивать поля двух подчиненных форм? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Оказывается, Unreal Engine позволяет качество на порядки выше, чем было в Lineedge
Etyuhibosecyu 05.07.2026
Жаль, конечно, что я не узнал об этом, пока Lineedge существовала, а то бы Noname2331 написал, что волки превращаются в пиксельную кашу, а я бы его попросил скачать какую-нибудь бриллиантовую или Pro. . .
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки
Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
|