Подписаться через RSS2Email.ru
|
Страница 1 из 10
- Предыдущая
- Следующая
Все страницы
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Краткий FAQ по C++
To the complete
English version of this C++ FAQ Lite
[Этот документ является переводом сборника ответов на часто задаваемые
вопросы группы новостей comp.lang.c++. Разделы будут добавляться по мере
их перевода. Последнюю версию перевода можно найти по адресу
http://quirks.chat.ru/cpp/faq. Ваши замечания и дополнения вы можете
высылать мне по адресу: slava_mironov@mail.ru. Последнюю
английскую версию этого сборника можно найти на
http://www.parashift.com/c++-faq-lite.]
[Авторские права: Вы можете свободно использовать этот документ в
некоммерческих целях и делать копии его или его частей для личного
использования, при условии сохранения всей информации об авторских правах,
включая это предупреждение. Не допускается цитирование этого документа без
ссылки на источник. Для коммерческого использования этого документа требуется
получить разрешение, во-первых, автора английской версии, во-вторых, автора
этого перевода. Автором английской версии является Marshall Cline
(cline@parashift.com), автором перевода - Ярослав Миронов
(slava_mironov@mail.ru, tada@mail.wplus.net).]
[Все зарегистрированные торговые марки, упоминающиеся в настоящем документе,
являются собственностью своих владельцев.]
[В случае, если какой-либо термин допускает неоднозначный перевод на русский
язык, я старался передать его в таком виде, как это сделано в русской версии
третьего издания книги Бьерна Страуструпа "Язык программирования С++" (BINOM
Publishers/Невский Диалект, 1999), чтобы избежать возможной путаницы. Часто
в таких случаях перевод термина сопровождается его английским оригиналом в
скобках. - YM]
Оглавление
- РАЗДЕЛ [8]: Ссылки
[8.1] Что такое ссылка?
[8.2] Что происходит в результате
присваивания ссылке?
[8.3] Что происходит, когда я
возвращаю из функции ссылку?
[8.4] Как можно переустановить
ссылку, чтобы она ссылалась на другой объект?
[8.5] В каких случаях мне стоит
использовать ссылки, и в каких - указатели?
- РАЗДЕЛ [9]: Встроенные (inline) функции
[9.1] Что такое встроенная
функция?
[9.2] Как встроенные функции могут
влиять на соотношение безопасности и скорости?
[9.3] Зачем мне использовать
встроенные функции? Почему не использовать просто #define макросы?
[9.4] Что сделать, чтобы определить
функцию - не член класса как встроенную?
[9.5] Как сделать встроенной функцию
- член класса?
[9.6] Есть ли другой способ
определить встроенную функцию - член класса?
[9.7] Обязательно ли встроенные
функции приведут к увеличению производительности?
- РАЗДЕЛ [10]: Конструкторы
[10.1] Что такое
конструкторы?
[10.2] Есть ли разница между
объявлениями List x; и List x();?
[10.3] Как из одного конструктора
вызвать другой конструктор для инициализации этого объекта?
[10.4] Всегда ли конструктор по
умолчанию для Fred выглядит как Fred::Fred()?
[10.5] Какой конструктор будет
вызван, если я создаю массив объектов типа Fred?
[10.6] Должны ли мои конструкторы
использовать "списки инициализации" или "присваивания значений"?
[10.7] Можно ли пользоваться
указателем this в конструкторе?
[10.8] Что такое "именованный
конструктор" ("Named Constructor Idiom")?
[10.9] Почему я не могу
проинициализировать статический член класса в списке инициализации
конструктора?
[10.10] Почему классы со
статическими данными получают ошибки при компоновке?
[10.11] Что такое ошибка в порядке
статической инициализации ("static initialization order fiasco")?
[10.12] Как предотвратить ошибку в
порядке статической инициализации?
[10.13] Как бороться с ошибками
порядка статической инициализации объектов - членов класса?
[10.14] Как мне обработать ошибку,
которая произошла в конструкторе?
- РАЗДЕЛ [11]: Деструкторы
[11.1] Что такое
деструктор?
[11.2] В каком порядке вызываются
деструкторы для локальных объектов?
[11.3] В каком порядке вызываются
деструкторы для массивов объектов?
[11.4] Могу ли я перегрузить
деструктор для своего класса?
[11.5] Могу ли я явно вызвать
деструктор для локальной переменной?
[11.6] А что если я хочу, чтобы
локальная переменная "умерла" раньше закрывающей фигурной скобки? Могу ли я при
крайней необходимости вызвать деструктор для локальной переменной?
[11.7] Хорошо, я не буду явно
вызывать деструктор. Но как мне справиться с этой проблемой?
[11.8] А что делать, если я не могу
поместить переменную в отдельный блок?
[11.9] А могу ли я явно вызывать
деструктор для объекта, созданного при помощи new?
[11.10] Что такое "синтаксис
размещения" new ("placement new") и зачем он нужен?
[11.11] Когда я пишу деструктор,
должен ли я явно вызывать деструкторы для объектов-членов моего класса?
[11.12] Когда я пишу деструктор
производного класса, нужно ли мне явно вызывать деструктор предка?
Страница 1 из 10
- Предыдущая
- Следующая
Последнее редактирование: 2009-10-02 17:39:30
Метки материала:
C++, FAQ, функции, ссылки, конструкторы, деструкторы, классы, объекты, inline, программирование
Оставьте, пожалуйста, свой комментарий к публикации
|