|
Программирование >> Операторы преобразования типа
Операции ввода-вывода в классе complex определены стандартные операторы ввода-вывода << и >> (табл. 12.6). Таблица 12.6. Операции ввода-вывода класса complexo Выражение Описание strm << с Записывает комплексное число с в выходной поток данных strm strm >> с Читает комппексное число с из входного потока данных strm Оператор выводит комплексное число в поток данных в следующем формате; {вещественная чдсть . мнимая часть) Эквивалентная реализация оператора вывода выглядит так: template <class Т. class charT, class traits> std;;bas1c ostream<charT.traits>& operator (std::basic ostream<charT.traits>& strm. const std;:complex<T> c) Временная строка для выполнения вывода с одним аргументом std:;bas1c 05tringstream<charT.traits> s: s.flagsCstrm.flagsO): Копирование флагов потока s.1mbue(strm.getloc()): Копирование локального контеста потока s.prec1s1on(strm.prec1sion()): Копирование точности потока Подготовка итоговой строки S ( с.real о . c.imagO ); Вывод итоговой строки strm s.strO: return strm: Оператор ввода читает комплексные числа в одном из представленных ниже форматов: {веществеиндя насть. мнинзяасть) (вещественная насть ) вещественная часть Если очередные символы во входном потоке данных не соответствуют ни одному из перечисленных форматов, устанавливается флаг ios::failbit, что может привести к соответствующему исключению (см. с. 576). К сожалению, вы не можете задать собственный разделитель для вещественной и мнимой частей комплексного числа. А это означает, что при использовании запятой в качестве десятичной точкий (как, например, в Германии или России) вводимые/выводимые данные выгл51дят довольно странно. Например, комплексное число с вещественной частью 4.6 и мнимой частью 2.7 записывается в виде: (4.6.2.7) Пример использования операций ввода-вывода приведен на с. 512. Трансцендентные функции в табл. 12.7 перечислены трансцендентные функции (тригонометрия, возведение в степень и т. д.) класса complex. Таблице 12.7. Трансцендентные функции класса complexo
Строение класса complex Здесь приведены подробные описания всех операций класса complexo. Обозначение Т задает параметр шаблона класса complexo, то есть тип вещественной и мнимой частей значения complex. Определения типов complex: .value type Тип вещественной и мнимой частей. Операции создания, копирования и присваивания complex::complex О О Конструктор по умолчанию. О Создает комплексное значение, в котором вещественная и мнимая части Инициализируются вызовом конструкторов по умолчанию (О для базовых типов данных). Это означает, что для базовых типов данных исходные значения вещественной и мнимой частей равны О (инициализация по умолчанию для базовых типов описана на с. 30). complex: :com\)ex (const Т& re) О Создает комплексное значение, в котором вещественная часть равна re, а мнимая часть инициализируется вызовом конструктора по умолчанию (О для базовых типов данных). О Конструктор также определяет автоматическое преобразование типа Т в complex comp/ех::complex (const Т& re. const Т& im) Создает комплексное значение, в котором вещественная и мнимая части равны соответственно re и im, complex polar (const Т& rho) complex polar (const T& rho. const T& theta) О Обе формы создают и возвращают комплексное число, инициализированное в полярных координатах.
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |