Пространства имён
Варианты
Действия

Часто задаваемые вопросы

Материал из cppreference.com

Содержание

[править]Какова цель этого сайта?

Наша цель предоставить программистам полный онлайн-справочник по языкам C и C++ и стандартным библиотекам, то есть более удобную версию стандартов C и C++.

Основная цель получить хорошую спецификацию C и C++. То есть вещи, которые неявно понятны опытному программисту, следует опустить или хотя бы отделить от основного описания функции, константы или класса. Хорошим местом для демонстрации различных вариантов использования является раздел "пример" на каждой странице. Обоснование, примечания по реализации и документацию по конкретной предметной области желательно включать в раздел "примечание" на каждой странице.

[править]Почему материал здесь ограничен стандартами C и C++?

Короче говоря, мы предпочли качество количеству. Однако некоторые Boost-библиотеки также могут быть кандидатами на включение. Хотя их учебные пособия очень хороши, справочная документация часто бывает очень негибкой и неудобной.

[править]Где я могу найти дополнительную информацию?

Ознакомьтесь со следующими коллекциями ссылок [1][2] для альтернативных справочников и материалов, которые выпадают за пределы этого сайта.

[править]Какой версии стандарта С придерживается данный справочник?

C17 это последний опубликованный стандарт C, поэтому он находится в центре внимания справочника по C.

Однако, чтобы предоставить более полную информацию, мы также включили документацию, описывающую предыдущие версии стандарта (C89, C95, C99, C11), проекты будущих версий стандарта и Технические Спецификации. Вся документация по конкретной версии должна быть соответствующим образом помечена.

Различные версии стандарта C можно найти в:

  • C23
  • C17
    • Официальный стандарт C17 можно приобрести в ISO
    • Окончательный проект стандарта C17 FDIS доступен бесплатно.
  • C11
    • Стандарт C11 был отозван и больше не доступен в ISO, хотя его всё ещё можно приобрести в ANSI.
    • Рабочий проект C11 N1570 (2011-04-12) доступен бесплатно и лишь минимально отличается от окончательной версии стандарта C11.
  • C99
    • Стандарт C99 был отозван и больше не доступен в ISO, хотя его всё ещё можно приобрести в ANSI.
    • Окончательный рабочий проект C99:TC3 N1256 (2007-09-07) находится в свободном доступе и лишь минимально отличается от окончательного варианта стандарта C99, включая все три Технических Исправления.
  • C95
    • Поправка C90 AMD1, которая преобразует C90 в C95, больше не доступна из официальных источников, хотя её можно найти в некоторых магазинах документации, например Глобальная Инженерная Документация.
  • C89/C90
    • Стандарт C90 был отозван и больше недоступен в официальных источниках, хотя его можно найти в некоторых магазинах документации, например SAI-Global.
    • Окончательный проект (X3J11/90-013 (нумерация ANSI) или n119 (нумерация WG14)) не является общедоступным, однако окончательный проект публичного рассмотрения X3J11/88-090 (1988-05-13) доступен и минимально отличается от окончательного стандарта C89.

[править]Какой версии стандарта С++ придерживается данный справочник?

C++20 это последний опубликованный стандарт C++ (а C++23 уже на подходе), поэтому на этом сайте основное внимание уделяется именно ему.

Однако, чтобы предоставить более полную информацию, мы также включили документацию, описывающую предыдущие версии стандарта (C++98, C++03, C++11, C++14, C++17, C++20), а также черновую документацию для будущих версий стандарта (C++26 и Технические Спецификации). Вся документация по конкретной версии должна быть соответствующим образом помечена.

Сами различные стандарты C++ можно найти в:

  • C++26
    • Последний бесплатный рабочий проект n4910 (2022-03-17).
    • Самую последнюю версию можно найти в исходной форме по адресу cplusplus/draft и в доступной для просмотра форме по адресу eel.is/c++draft.
  • C++23
    • Официальный стандарт C++23 находится на завершающей стадии публикации.
    • Окончательный вариант C++23 N4950 (2023-05-10).
  • C++20
    • Официальный стандарт C++20 можно приобрести непосредственно у ISO
    • Окончательный вариант C++20 N4860 (2020-03-31).
    • Доступен рабочий проект после C++20 N4868 (2020-10-18), который содержит только редакционные исправления N4867, начиная с C++20.
  • C++17
    • Стандарт C++17 был отозван и больше не доступен в ISO. Его по-прежнему можно приобрести у организаций-членов, таких как ANSI.
    • Окончательный вариант C++17 N4659 (2017-03-21).

[править]Почему существуют различия между стандартом и cppreference?

Cppreference поддерживается и призван быть полезным для программистов, а не историков ISO, и, как программисты, мы заботимся о том, что мы получаем, когда используем -std=c++20 или какой то ещё эквивалентный флаг, установленный вашим компилятором. В результате наша документация предназначена для гипотетической полной и правильной реализации каждой версии стандарта C и C++, а также всех последующих исправлений ошибок и пояснений, применимых к этой версии. Если они доступны, мы используем рекомендации комитета по стандартам и текущие реализации в качестве доказательства того, что будет делать такая гипотетическая реализация.

[править]Есть ли у вас версия этого сайта, подходящая для просмотра в автономном режиме?

Конечно, вы можете взять её здесь.

Некоторые приложения также предлагают просмотр содержимого этого сайта в автономном режиме. Например, приложения на основе набора документации: Dash для Mac и iOS, Velocity для Windows, Zeal для Linux и LovelyDocs для Android.

[править]Можете ли вы сделать сайт более удобным для просмотра?

Вы можете найти тёмную тему более разборчивой, чем яркая тема по умолчанию. Или вы можете попробовать расширение для браузера, например DarkReader.

Упомянутые ранее автономные приложения на основе набора документов также предлагают тёмный режим и другие параметры, но не обновляются в режиме реального времени.

[править]Что я могу сделать с материалами на этом сайте?

Контент распространяется по лицензии Creative Commons Attribution-Sharealike 3.0 Unported License (CC-BY-SA) и GNU Free Documentation License (GFDL) (без версий, без неизменяемых разделов, текстов на передней и задней обложках). Это означает, что вы можете использовать этот сайт практически любым способом, включая зеркалирование, копирование, перевод и т.д. Всё, что мы просим, это предоставить обратную ссылку на cppreference.com, чтобы люди знали, где найти самый актуальный контент. Кроме того, любой изменённый контент должен выпускаться под эквивалентной лицензией, чтобы каждый мог извлечь выгоду из модифицированных версий.

[править]Что? Это вики? Могу ли я что-то изменить?

Абсолютно. Если вы видите что-то не то, исправьте это. Однако в настоящее время вики ограничена стандартами C и C++, поэтому не следует добавлять нестандартный контент, например расширения, специфичные для компилятора. Кроме того, пожалуйста, дважды сверяйте любые изменения с соответствующим стандартом. Если вы в чём-то не уверены, вы можете спросить об этом на страницах обсуждения.

[править]Как я могу редактировать? Каковы правила синтаксиса?

В этой вики используется MediaWiki, та же система вики, что и в проект Википедии. Вы можете использовать их справочные страницы, чтобы познакомить вас с синтаксисом викикода MediaWiki. Однако большая часть контента в этой вики заключена в довольно сложные шаблоны. Они выполняют большую часть форматирования и помогают собрать повторяющиеся данные в одном месте, поэтому, когда что-то нужно изменить, нет необходимости вносить одну и ту же модификацию десятки или сотни раз. Справку о шаблонах, используемых в этой вики, смотрите в разделе Шаблоны.

Вики стремится иметь единый стиль. Пожалуйста, обратитесь к Руководство по стилю для получения руководства по стилю, которое поможет следовать единообразному стилю и форматированию в вики.

Дополнительную информацию о редактировании смотрите в разделе Справка по Редактированию.

Однако обратите внимание, что вам не нужно знать ни сложные шаблоны, ни вышеупомянутые рекомендации, чтобы внести свой вклад. Гораздо сложнее написать сам контент, чем применить форматирование, поэтому не заботьтесь о стиле при написании, так как кто-то исправит это позже.

Некоторые шаблоны с высоким трафиком заблокированы во избежание вандализма или по соображениям производительности. В этих случаях вам следует запросить изменение на странице обсуждения.

[править]Я хочу помочь. С чего мне начать?

Отлично! Есть несколько специальных страниц, содержащих предложения по исправлению:

[править]Кто стоит за этим сайтом?

cppreference.com был создан и поддерживается группой энтузиастов C++ со всего мира. Сайт полностью поддерживается сообществом с момента его создания в 2000 году; в настоящее время затраты на хостинг частично компенсируются рекламой (пожалуйста, сообщайте о проблемах с рекламой по адресу comments@cppreference.com), пожертвованиями и продажей ужасно наполненных каламбуром товаров, связанных с C++.

[править]Как я могу связаться с вами?

Вы можете связаться с нами по адресу comments@cppreference.com.

Если вы сообщаете о неработающей ссылке, возможно, будет проще сообщить об этом здесь.

close