Проект стандарта ISO C++
В стандарте ISO C++: последний рабочий проект n3291
, это не публично доступно. Но n3290
доступен. до февраля проект n3242
, Могу ли я знать сейчас... какой проект является более правильным, чтобы стать окончательным проектом? Потому что есть много различий в n3242
по сравнению с n3290
?
в этой ссылке также они дали..: текущий рабочий проект как n3242
? (почему бы и нет n3290
)
http://www.open-std.org/jtc1/sc22/wg21/
http://en.wikipedia.org/wiki/C%2B%2B0x
Скажите, пожалуйста, какой проект является правильным, чтобы следовать (до окончательного выпуска проекта)?
2 ответа
Некоторое время n3291 был доступен с очевидного URL (просто поиск и замена n3242
с n3291
в ссылке в Википедии). Но я думаю, что кто-то решил, что это было слишком близко к финальной версии, поэтому он больше не доступен.
Таким образом, Википедия не ссылается на нее, потому что не на что ссылаться.
Я спрятал копию n3291, пока она была доступна. Я не провел исчерпывающего поиска, но никаких существенных изменений не произошло; только уточнения. Например, раздел 1.8 (6) n3242 гласит:
Если объект не является битовым полем или подобъектом базового класса нулевого размера, адрес этого объекта является адресом первого байта, который он занимает. Два разных объекта, которые не являются ни битовыми полями, ни подобъектами базового класса нулевого размера, должны иметь разные адреса.
Хотя тот же раздел n3291 гласит:
Если объект не является битовым полем или подобъектом базового класса нулевого размера, адрес этого объекта является адресом первого байта, который он занимает. Два объекта, которые не являются битовыми полями, могут иметь один и тот же адрес, если один является подобъектом другого или если хотя бы один является подобъектом базового класса нулевого размера, и они имеют разные типы; в противном случае они должны иметь разные адреса.
(n3291 использует красный зачеркнутый и подчеркнутый синий текст для выделения изменений по сравнению с n3242, поэтому найти этот пример несложно).
Если кто-то может привести убедительный аргумент, что для меня было бы законным переиздать n3291, я был бы рад сделать его доступным. Мне, конечно, не нужно было вводить какой-либо пароль или даже нажимать на соглашение перед его загрузкой...
[Обновление: в моей первой версии этого ответа я написал "n3290", когда имел в виду "n3291". Довольно странно, что "рабочий проект" имеет большее число, чем "окончательный вариант". Во всяком случае, то, что некоторое время было свободно доступно, было n3291.]
[Обновление 2: N3337 является первоначальным проектом следующего стандарта C++, и он очень похож на окончательный стандарт C++11. Увидеть:
Различаются номера разделов между стандартом C++11 и бесплатным проектом N3337?
Таким образом, у вас есть выбор бесплатных шашек; последний до официального стандарта (N3242) и первый после него (N3337). Все, кажется, используют ту же самую нумерацию параграфа.]
Разница между N3290 и N3291 заключается в титульном листе. N3291 говорит "Рабочий проект"; другой нет. Кроме этого, они говорят то же самое.
К сожалению, ни один не доступен онлайн из-за проблем ISO. Окончательный стандарт, вероятно, будет содержать лишь незначительные изменения по сравнению с N3290, поэтому они слишком близки к окончательному для публикации. Особенно с учетом того, что N3291 был признан FDIS.