1 / 1 / 0
Регистрация: 02.08.2012
Сообщений: 15

Отличие объявления, определения и инициализации

26.06.2013, 23:57. Показов 22420. Ответов 42
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, товарищи.

Читаю тут книжицу по C++, учусь потихоньку.
И возник у меня вопрос нерядового характера: в чём фундаментальное отличие объявления, определения и инициализации? В книге всё намешано, ничего не понятненько.

Однако усёк, что они говаривают, будто такая строка:
C++
1
int a = 3;
не просто присваивание переменной значения, а что-то большее.
И как-то это связано с созданием экземпляров классов.

А ещё пишут, что есть инициализация прямая и инициализация копии.
А потом вот это кажут:
C++
1
2
int val = 1024;
int val (1024);
И говаривают, будто val в обоих случаях будет одинаковой.

Что-то я видно не секу истинной сути.
Помогите словцом мудрым.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.06.2013, 23:57
Ответы с готовыми решениями:

Правила объявления инициализации
Напишите основные - самые главные правила обьявления инициализации.

В чём отличие разных способов объявления переменных?
в чем отличие int a(2); от int a=2; И как писать правильней

Сложные определения и объявления
Решил создать отдельный топик т.к. ну совсем никак не могу разобраться (все взято с книги) есть вот такая штука void * ...

42
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
27.06.2013, 19:00
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от IGPIGP Посмотреть сообщение
Это безопаснее конечно, но немного дольше. Разве нет?
По сравнению с чем? Приведите примеры если не затруднит.
0
1 / 1 / 0
Регистрация: 02.08.2012
Сообщений: 15
27.06.2013, 23:38  [ТС]
Ну и холивар я своим вопросом поднял
Товарищам @IGPIGP и @Catstail отдельное спасибо!
1
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
28.06.2013, 01:58
Цитата Сообщение от _Cherep_ Посмотреть сообщение
Ну и холивар я своим вопросом поднял
"_Cherep_, я уверен был, что никак не мог Вас обидеть.

Не по теме:

Что касается холивара... да нет холивара. Не выгодно отстаивать то, что можно, но не ненужно. Оставлять неинициализированные переменные, особенно указатели это плохо. Сразу после окончания работы конструктора к экземпляру уже можно обратиться и, - бум... Так, что инициализировать нужно. Или откладывать, но в виде обращения к полю через метод который вынуждает инициализацию при первом обращении, если инициализация трудоёмка, а вероятность обращения невысока или отложена во времени, а создаётся массив объектов.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.06.2013, 01:58

Объявления и определения структур
Может кто-нибудь объяснить как это работает: //Source1.cpp #include "pch.h" #include <iostream> using namespace std; ...

Циклы for. Проблема объявления/инициализации
Эх, так и придется создавать новую тему. А то, блин, интересно ж... Итак, я тут в недавней теме утверждал, что блок инициализации цикла...

Написать программу объявления, создания и инициализации двумерного прямоугольного массива
Написать программу объявления, создания и инициализации (при объявлении) двумерного прямоугольного массива, найти среднее арифметическое...

Когда выделяется память под переменные - во время объявления или инициализации
Привет! Вопрос такой: когда выделяется память под переменные - во время объявления или инициализации?

Архитектура правильного определения и объявления класса
Всем привет! В процессе написания одной программы "поймал" себя на том, что видимо не до конца понимаю логику правильного определения...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
43
Ответ Создать тему
Опции темы

Новые блоги и статьи
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . . Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг. Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует. В процессе разработки. . .
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации: 1. Вернуть возможность использования знаков | 1 l I;. . .
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С. Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию? Фраза «Любая достаточно развитая технология неотличима от магии». . .
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль? Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология. «Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru