Promotion

Jul. 14th, 2011 10:56 pm
ny_quant: (Default)
[personal profile] ny_quant
Я щетаю, promotion должен быть либо самоочевидным и безопасным, либо никаким вообще.

int -> long // ok
long -> double // ok
unsigned int -> int // низя
int -> unsigned int // тоже низя

О чем думали?

Date: 2011-07-15 04:06 am (UTC)
From: [identity profile] cema.livejournal.com
Но ведь очевидно почему, разве нет?

Date: 2011-07-15 12:22 pm (UTC)
From: [identity profile] ny-quant.livejournal.com
Нет, неочевидно.

Date: 2011-07-18 07:32 pm (UTC)
From: [identity profile] ticklish-frog.livejournal.com
А я бы и long -> double запретил. На основании того, что long может с прогрессом процессоров так разрастись, что не поместится в мантиссу double.

Date: 2011-07-18 10:23 pm (UTC)
From: [identity profile] ny-quant.livejournal.com
Тоже правда.

А вот говорят, что я чего-то не понимаю.

Date: 2011-07-19 12:55 pm (UTC)
From: [identity profile] nlothik.livejournal.com
А мне как-то не понятно, что тут не так. long -> double разве что я бы поостерёгся делать, а что такого в запрете делать из беззнаковой знаковую и наоборот?

Date: 2011-07-19 02:29 pm (UTC)
From: [identity profile] ny-quant.livejournal.com
Что будет, если значение беззнаковой переменной больше максимума, дозволяемого знаковой? Что будет если знаковую с отрицательным значением присвоить в беззнаковую?

Date: 2011-07-19 02:42 pm (UTC)
From: [identity profile] nlothik.livejournal.com
Всё правильно -- мне и неясно, что не так с _запретом_ на такое преобразование типов. Правильно запретили.

Или я неправильно понял, и на самом деле так *можно* и предлагается запретить? Тогда справедливо!

Date: 2011-07-19 07:29 pm (UTC)
From: [identity profile] ny-quant.livejournal.com
На самом деле так можно, но я бы запретил.

Date: 2011-08-10 05:50 am (UTC)
From: [identity profile] blue-slonopotam.livejournal.com
тогда нельзя конвертировать из целого в плавающее с мантиссой меньше разрядности исходного целого. т.е. лонг в дабл низя.

Date: 2011-08-11 12:02 am (UTC)
From: [identity profile] ny-quant.livejournal.com
Да, верно.

Profile

ny_quant: (Default)
ny_quant

February 2026

S M T W T F S
1 234 567
891011121314
15161718192021
22232425262728

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 7th, 2026 03:54 am
Powered by Dreamwidth Studios