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

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

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

Студворк — интернет-сервис помощи студентам
В чем различие привидения типа (type)expression, от type(expression)?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.01.2014, 19:12
Ответы с готовыми решениями:

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

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

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

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

6
Модератор
Эксперт С++
13256 / 10396 / 6214
Регистрация: 18.12.2011
Сообщений: 27,814
11.01.2014, 19:39 2
Насколько я знаю, ни в чем.
Разве, что в приоритете.
(int)a/b приведет a к int
int(a/b) приведет результат деления к int
0
║XLR8║
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,361
Записей в блоге: 5
11.01.2014, 19:58 3
iwsyhgia, (type)expression это приведение типа, а type(expression) - вызов конструктора.

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

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

Не по теме:

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

1
outoftime
18.01.2014, 08:08     Приведение типов
  #7

Не по теме:

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

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.01.2014, 08:08

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

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

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

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru