С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/29: Рейтинг темы: голосов - 29, средняя оценка - 4.62
1 / 1 / 0
Регистрация: 04.12.2012
Сообщений: 49

Зачем нужно явно указывать тип переменной?

19.03.2013, 20:04. Показов 5886. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Объясните зачем нужно явно указывать тип переменной?
Например в С++ это обязательно, а php нет. Просто говорят что не указывать тип явно приводит к не лучшему исходу. Почему? И важно ли это "нововведение" в С++ (и подобных языках) про явное указание (в бейсике не нужно )?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.03.2013, 20:04
Ответы с готовыми решениями:

Зачем указывать тип функции?
Зачем нужно перед функции писать ее тип? И если функция int то может ли она принимать аргументы других типов? И если в аргументах функции...

При вынесении определения всегда ли нужно указывать функцию как inline явно?
Бьярни пишет class char_stack { int size; char* top; char* s; public: char_stack(int sz) { top=s=new char; } ...

Как избавиться от необходимости явно указывать тип в enum?
Как сделать, чтобы для перечислений не нужно было явно указывать тип int? switch (direction) { case...

19
16 / 16 / 8
Регистрация: 14.01.2013
Сообщений: 545
Записей в блоге: 2
19.03.2013, 20:05
Для экономии памяти и быстроты выполнения программы.
1
1 / 1 / 0
Регистрация: 04.12.2012
Сообщений: 49
19.03.2013, 20:10  [ТС]
И все? Ни к чему плохому "авто" тип привести не может?
0
16 / 16 / 8
Регистрация: 14.01.2013
Сообщений: 545
Записей в блоге: 2
19.03.2013, 20:12
Нет. С++ Гибкий язык.
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,531
Записей в блоге: 1
19.03.2013, 20:13
а как компилятору узнать сколько выделять памяти под каждую переменную?
Как вообще без этого программировать?
0
350 / 269 / 67
Регистрация: 12.12.2012
Сообщений: 2,130
19.03.2013, 20:15
Еще например: int быстрей чем unsigned char,unsigned char просто экономит память,но важней скорость.
0
Неэпический
 Аватар для Croessmah
18144 / 10728 / 2066
Регистрация: 27.09.2012
Сообщений: 27,026
Записей в блоге: 1
19.03.2013, 20:15
Цитата Сообщение от Jutar Посмотреть сообщение
"нововведение" в С++
нововведение - это скорее не указывать тип.

Не по теме:

Цитата Сообщение от Jutar Посмотреть сообщение
Например в С++ это обязательно, а php нет.
пых вообще из веба, нашли с чем сравнить...

0
1 / 1 / 0
Регистрация: 04.12.2012
Сообщений: 49
19.03.2013, 20:16  [ТС]
Причем здесь это? Я понимаю прекрасно что "авто" тип это по сути тип который определяется другой программой, например библиотекой. Цель данной темы было узнать что будет если не указывать тип переменной в скриптовых языках и т.д!
0
Неэпический
 Аватар для Croessmah
18144 / 10728 / 2066
Регистрация: 27.09.2012
Сообщений: 27,026
Записей в блоге: 1
19.03.2013, 20:16
Цитата Сообщение от Jutar Посмотреть сообщение
про явное указание (в бейсике не нужно)
Поэтому и жрет он как богатырь
0
1 / 1 / 0
Регистрация: 04.12.2012
Сообщений: 49
19.03.2013, 20:17  [ТС]
Цитата Сообщение от Croessmah Посмотреть сообщение
нововведение - это скорее не указывать тип.
Я про бейсик
0
Неэпический
 Аватар для Croessmah
18144 / 10728 / 2066
Регистрация: 27.09.2012
Сообщений: 27,026
Записей в блоге: 1
19.03.2013, 20:18
Цитата Сообщение от Jutar Посмотреть сообщение
узнать что будет если не указывать тип переменной в скриптовых языках и т.д!
Скорее всего просто выделится количество памяти, достаточное для любого типа.

Добавлено через 46 секунд
Цитата Сообщение от Jutar Посмотреть сообщение
Я про бейсик
Вот если на Basic'e не указывать тип, то переменная имеет тип Variant(в VB6 это 16 байт вроде)
1
Higher
 Аватар для diagon
1953 / 1219 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
19.03.2013, 20:21
Я вообще не понимаю, как можно читать динамические языки. Собственно, вопрос - что именно вам не нравится?
Много букаф? Так давно auto изобрели.
0
16 / 16 / 8
Регистрация: 14.01.2013
Сообщений: 545
Записей в блоге: 2
19.03.2013, 20:22
Всё элементарно ватсон.
P.S В php есть типы, вот вам будет штрафное задание.
Изучить типы данных.
Подсказка.
пример
int - 4 байта.
В uinx int - 8 байт.
Действуйте)
0
1 / 1 / 0
Регистрация: 04.12.2012
Сообщений: 49
19.03.2013, 20:24  [ТС]
Цитата Сообщение от updaite Посмотреть сообщение
Всё элементарно ватсон.
P.S В php есть типы)
Я знаю, и что?
Я узнал что хотел: явное указание для ускорения программы и экономии памяти, или одно из этого.

P.S. я программист игр, и сейчас моделирую игровую систему и проектирую ИИ, а такого простого оказывается не знаю!
P.P.S. я начинающий программист и на данном этапе "развития" всего лишь экспериментирую...
0
16 / 16 / 8
Регистрация: 14.01.2013
Сообщений: 545
Записей в блоге: 2
19.03.2013, 20:36
Знающий человек, не задавал бы такие вопросы.
Это гласит о том, что вы не знаете, как устроен компьютер, и не понимаете как представляется переменная в памяти. А это большой минус.

Добавлено через 8 минут
Цитата Сообщение от Jutar Посмотреть сообщение
P.P.S. я начинающий программист и на данном этапе "развития" всего лишь экспериментирую...
Изучайте информатику) Представления чисел в ячейки памяти, Машину Тьюринга, коды Фано и т.д.
Хуже вам не будит, вопросов меньше будет, да и самому интересно будет.
0
1 / 1 / 0
Регистрация: 04.12.2012
Сообщений: 49
19.03.2013, 20:37  [ТС]
С одной стороны да, с другой нет. Я знаю как устроен компьютер и хранение в памяти тоже знаю, я лишь зациклился на том, что понял пост одного человека на форуме не верно, подумав, что он хотел сказать что это плохо сказывается на программе. Я понял это в смысле логической ошибки, которая может произойти если явно не указать тип (не в смысле всегда, обязательно, а при определенных обстоятельствах), а то что это просто влияет на память и скорость я не подумал...

P.S. спасибо за совет, почитаю
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
19.03.2013, 21:26
Цитата Сообщение от pEntity Посмотреть сообщение
Еще например: int быстрей чем unsigned char,unsigned char просто экономит память,но важней скорость.
Ого, а можно по-подробней?

По сабжу http://ru.wikipedia.org/wiki/Д... _типизация
0
Higher
 Аватар для diagon
1953 / 1219 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
19.03.2013, 21:40
Цитата Сообщение от Kastaneda Посмотреть сообщение
Ого, а можно по-подробней?
Выравнивание же :)
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
19.03.2013, 21:53
Цитата Сообщение от diagon Посмотреть сообщение
Выравнивание же
а если переменная лежит в регистре? А если char тоже выровнен? А если int не выровнен?
0
350 / 269 / 67
Регистрация: 12.12.2012
Сообщений: 2,130
20.03.2013, 02:48
Цитата Сообщение от Kastaneda Посмотреть сообщение
Ого, а можно по-подробней?
В книге прочитал основ С++,не помню только в какой.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.03.2013, 02:48
Помогаю со студенческими работами здесь

Почему в Python3 под Wndows нужно явно указывать кодировку?
Добрый день! Как сделать, чтобы Python в Windows воспринимал по дефолту входящие файлы в UTF-8 ? Есть текстовый файл в формате...

Стоит ли указывать тип переменной?
Смотрю какой_то код. там в качестве параметров функции идут переменные и указано какой тип переменной. Стоит ли так делать, указывать тип...

Можно ли как нибудь явно указать тип переменной, чтобы ИДЕ рассказала мне все что я хочу знать об объекте?
Можно как нибудь указать тип, но не через оператор new...

Каковы три случая, когда надо явно указывать приведение примитивных типов в Java?
Моя наставница по Java после проверки того, насколько хорошо я усвоил материал, сказала, что у меня проблемы с пониманием приведением...

Какой тип данных использует VBA, если тип явно не объявлен
Какой тип данных использует VBA, если тип явно не объявлен


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru