![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 22.06.2012
Сообщений: 11
|
![]()
Подскажите, кто знает, что это?
Код:
|
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 18.02.2012
Сообщений: 155
|
![]()
Объявляется целая переменная y, затем ей присваивается, преобразованная в целое, некая переменная x.
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 20.05.2012
Сообщений: 58
|
![]()
иными словами это преобразование переменной Х к типу int
|
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
![]() Цитата:
Ответ не верный. В правой части выражения - конструктор с параметром. Рузультат правой части выражения - временный объект, инициализированный значением аргумента. Далее, у объекта стоящего в левой части будет запущен operator=, аргументом которого будет является этот временный объект. Так будет произведена процедура присвоения значения. Поскольку участники вычисления - элементарные типы данных, то данная процедура будет оптимизирована. (хотя компиль в любом случае умеет оптимизировать такие процедуры) Последний раз редактировалось _Bers; 27.06.2012 в 20:12. |
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 18.02.2012
Сообщений: 155
|
![]()
_Bers, для базовых типов данных не вызываются конструкторы, и уж тем более operator=. int(x) это форма записи С-оператора приведения типа. Я откомпилировала код, именно на С++:
Код и результат Последний раз редактировалось rmv240899; 27.06.2012 в 20:43. |
![]() |
![]() |
![]() |
#6 | |
Пользователь
Регистрация: 20.05.2012
Сообщений: 58
|
![]() Цитата:
![]() |
|
![]() |
![]() |
![]() |
#7 | |||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Цитата:
Цитата:
y=int(x); вызывает функцию __ftol2. Это обычное округление с отбрасыванием.
I'm learning to live...
|
|||
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 18.02.2012
Сообщений: 155
|
![]()
В своем корне это преобразование, но ведь не конструктор!
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 20.05.2012
Сообщений: 58
|
![]()
а что, балет??? как бы не была определена переменная Х она будет преобразована в тип int насколько это возможно
Последний раз редактировалось Fatal Error; 27.06.2012 в 21:04. |
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 18.02.2012
Сообщений: 155
|
![]()
Это не конструктор, и конструктором быть не может. Можно записать и так:
Код:
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
<< >> & ^ | с чем это едят и что это такое? | pufystyj | Общие вопросы C/C++ | 4 | 30.03.2011 13:59 |
Эквалайзер...что это? кто это? Можно ли с ним подружиться? | .Phoenix | Мультимедиа в Delphi | 45 | 08.04.2010 23:37 |
Что это такое и как это того... | Alex Cones | Общие вопросы Delphi | 2 | 11.10.2009 12:04 |