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

Приведение типов

11.01.2014, 19:12. Показов 909. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В чем различие привидения типа (type)expression, от type(expression)?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.01.2014, 19:12
Ответы с готовыми решениями:

Приведение типов
Привет всем! Компилятор выдает варнинг если сравниваются signed и unsigned значения.Допустим, код пересмотреть нельзя и изменить типы...

Приведение типов
Необходимо привязать адрес массива double по указателю к адресу структуры. Массив сам создан в другом приложении. Если использовать...

Приведение типов
Уважаемые программеры, ПОМОГИТЕ!!! Нужно (мне) реализовать шаблонную функцию для приведения типов. Пример:...

6
Модератор
Эксперт С++
 Аватар для zss
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,243
11.01.2014, 19:39
Насколько я знаю, ни в чем.
Разве, что в приоритете.
(int)a/b приведет a к int
int(a/b) приведет результат деления к int
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
11.01.2014, 19:58
iwsyhgia, (type)expression это приведение типа, а type(expression) - вызов конструктора.

Добавлено через 11 минут
http://alenacpp.blogspot.com/2005/08/c.html

Добавлено через 3 минуты
У меня такое впечатление, что приведение типов в действительности отживает свое из-за появления шаблонов.
1
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
16.01.2014, 16:50
Цитата Сообщение от outoftime Посмотреть сообщение
У меня такое впечатление, что приведение типов в действительности отживает свое из-за появления шаблонов.
Очень спорное заявление, скорее даже неверное. Потому что эти два механизма не имеют ничего общего. Приведение типов - в общем случае механизм стадии выполнения, шаблоны же (в С++) - строго механизм стадии компиляции, на стадии выполнения о том, шаблонным был класс или нет, неизвестно ровно ничего. От излишних приведений типов в некотором роде спасают паттерны проектирования, но полное отсутствие приведений типов в коде (достаточно большом и сложном в плане архитектуры) является, по моему мнению, недостижимым идеалом.
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
17.01.2014, 13:59
silent_1991, я не говорю что не надо знать что такое приведение типа и когда его надо использовать, я имею в виду что при правильном подходе от него можно полностью отказаться.
Цитата Сообщение от silent_1991 Посмотреть сообщение
но полное отсутствие приведений типов в коде (достаточно большом и сложном в плане архитектуры) является, по моему мнению, недостижимым идеалом
Опять таки это не вина шаблонов это в большей степени "мелкие" ошибки проектирования.
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
17.01.2014, 14:35
Цитата Сообщение от outoftime Посмотреть сообщение
я не говорю что не надо знать что такое приведение типа и когда его надо использовать
А я и не говорил, что вы такое говорили.
Цитата Сообщение от outoftime Посмотреть сообщение
Опять таки это не вина шаблонов это в большей степени "мелкие" ошибки проектирования.
Это скорее не ошибки, а издержки проектирования. Невозможно написать абсолютно полностью обобщённый код, который оперирует исключительно интерфейсами верхнего уровня иерархии (только в этом случае мы сможем обойтись без приведений типов), потому что такой полностью обобщённый код будет уже реализовывать полноценный искусственный интеллект. Другого варианта я не вижу.
По этому поводу есть хорошая цитата (не помню, кто автор) (вольное цитирование): "Когда пишете свою программу, сильно не увлекайтесь, а не то можете случайно написать операционную систему".

Не по теме:

Разработчикам emacs бы эту цитату взять на вооружение...

1
18.01.2014, 08:08

Не по теме:

Цитата Сообщение от silent_1991 Посмотреть сообщение
Разработчикам emacs бы эту цитату взять на вооружение...
Я сам vim-ом пользуюсь (:

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

приведение типов
Объясните, пожалуйста, почему возникает такая ошибка: error C2666: 'operator *' : 4 overloads have similar conversions ? Из-за того,...

Приведение типов.
Столкнулся с задачей считывания данных из символьного массива с дальнейшим отбором из всего этого чисел и перезаписи их в массив типа...

Приведение типов
Есть код вызова метода: obj.func(char a, char b) сам метод: void func(char a, char b) { int i = (int)a, int j = (int)b; В...

Приведение типов
При вводе с клавиатуры s = 11 и a = 1.1, получаем 9. Результат переменной d = 10, это правильно. В чём подвох? int main() { ...

Приведение типов.
Доброго времени суток! В общем, есть класс Matrix(прямоугольные над полем вещ. чисел). Необходимо реализовать приведение типов Matrix...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru