Стандартные преобразования
Язык C++ определяет преобразования между своими базовыми типами.Он также определяет преобразования для указателя, ссылки и производных типов указатель-к-участника.Такие преобразования называются "стандартными преобразованиями". (Дополнительные сведения о типах, стандартные типы и производных типах см. в разделах Типы.)
В этом разделе обсуждаются следующие стандартные преобразования:
Преобразования Указатель-к-участника
Примечание Пользовательские типы могут определять свои собственные преобразования.Преобразование пользовательских типов реализуется in Конструкторы и преобразования.
Следующий код вызывает преобразования (в этом примере, объединенных промотированиях):
long lnum1, lnum2;
int inum;
// inum promoted to type long prior to assignment.
lnum1 = inum;
// inum promoted to type long prior to multiplication.
lnum2 = inum * lnum2;
Примечание |
---|
Результат преобразования l-значение, только если он создает ссылочный тип.Например, определенное пользователем преобразование, объявленное как |
operator int&()
Примечание |
---|
возвращает ссылку и левостороннего значения.Однако преобразование, объявленное как |
operator int()
Примечание |
---|
возвращает объект, а не левостороннего значения. |