3.11. Класс complex
3.11. Класс complex
Класс комплексных чисел complex – еще один класс из стандартной библиотеки. Как обычно, для его использования нужно включить заголовочный файл:
#include complex
Комплексное число состоит из двух частей – вещественной и мнимой. Мнимая часть представляет собой квадратный корень из отрицательного числа. Комплексное число принято записывать в виде
2 + 3i
где 2 – действительная часть, а 3i – мнимая. Вот примеры определений объектов типа complex:
// чисто мнимое число: 0 + 7-i
complex double purei( 0, 7 );
// мнимая часть равна 0: 3 + Oi
complex float rea1_num( 3 );
// и вещественная, и мнимая часть равны 0: 0 + 0-i
complex long double zero;
// инициализация одного комплексного числа другим
complex double purei2( purei );
Поскольку complex, как и vector, является шаблоном, мы можем конкретизировать его типами float, double и long double, как в приведенных примерах. Можно также определить массив элементов типа complex:
complex double conjugate[ 2 ] = {
complex double ( 2, 3 ),
complex double ( 2, -3 )
};
Вот как определяются указатель и ссылка на комплексное число:
complex double *ptr = conjugate[0];
complex double ref = *ptr;
Комплексные числа можно складывать, вычитать, умножать, делить, сравнивать, получать значения вещественной и мнимой части. (Более подробно мы будем говорить о классе complex в разделе 4.6.)
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
5.1. Класс
5.1. Класс Класс (class) в языке UML служит для обозначения множества объектов, которые обладают одинаковой структурой, поведением и отношениями с объектами из других классов. Графически класс изображается в виде прямоугольника, который дополнительно может быть разделен
19.1.3. Класс type_info
19.1.3. Класс type_info Точное определение класса type_info зависит от реализации, но некоторые его характерные черты остаются неизменными в любой программе на C++:class type_info {// представление зависит от реализацииprivate:type_info( const type_info& );type_info& operator= ( const type_info& );public:virtual ~type_info();int
Класс Pen
Класс Pen Класс Pen используется для создания пера, при помощи которого проводятся прямые и кривые линии. В отличие от полной версии .NET Framework, поддерживающей четыре перегруженных версии конструктора Pen, .NET Compact Framework позволяет создавать перо только с помощью двух
Класс Brush
Класс Brush Класс Brush является абстрактным классом для создания кистей, с помощью которых можно рисовать фигуры и текст на графической поверхности. Библиотека .NET Compact Framework поддерживает классы SolidBrush и TextureBrush. К сожалению, класс LinearGradientBrush, позволяющий рисовать красивые
Самый базовый класс MFC (класс CObject)
Самый базовый класс MFC (класс CObject) Подавляющее большинство классов библиотеки MFC наследовано от базового класса CObject, лежащего в основе всей иерархии классов этой библиотеки. Методы и элементы данных класса CObject представляют наиболее общие свойства наследованных из него
Архивный класс (класс CArchive)
Архивный класс (класс CArchive) Класс CArchive используется для сохранения и восстановления состояния объектов в файлах на диске. Перед использованием объекта класса CArchive он должен быть привязан к файлу – объекту класса CFile.Более подробно о процессе сохранения и восстановления
Класс CObject – основной класс MFC
Класс CObject – основной класс MFC Подавляющее большинство классов из библиотеки MFC наследуются от основного класса CObject. Практически все классы, которые используются в ваших приложениях, например CView или CWinApp, унаследованы от класса CObject.Класс CObject обеспечивает наиболее общие
Класс CException
Класс CException Класс CException включает два виртуальных метода GetErrorMessage и ReportError. Эти методы позволяют получить словесное описание причины, которая привела к вызову исключения. Заметим, что методы GetErrorMessage и ReportError чисто виртуальные, поэтому они должны быть переопределены в
Класс CMemoryException
Класс CMemoryException Когда приложение заказывает у операционной системы новый блок оперативной памяти, может случиться, что вся память уже используется и больше памяти отдано приложению быть не может.Когда приложение пытается создать новую переменную или объект, вызывая
Класс CFileException
Класс CFileException Класс CFileException предназначен для обработки исключительных ситуаций, возникающих во время создания или вызова методов класса CFile и порожденных от него классов. Этот класс описан нами в разделе “Класс CFile” и предназначается для работы с файловой системой.
Класс CArchiveException
Класс CArchiveException Исключительные ситуации, возникающие во время записи и восстановления объектов из файла, вызывают исключение CArchiveException.Причина, по которой было вызвано исключение, определяется элементом данных m_cause из класса CFileException. В него заносится код, по которому
Класс CNotSupportedException
Класс CNotSupportedException Если приложение пытается вызвать несуществующий метод класса, то вызывается исключение CNotSupportedException. Конструктор класса CNotSupportedException имеет следующий вид:CNotSupportedException();Однако если вы сами желаете вызвать из своего кода исключение этого типа, то вместо
Класс CResourceException
Класс CResourceException Если в процессе работы возникают проблемы с ресурсами, например приложение пытается загрузить несуществующий ресурс, тогда вызывается исключение CResourceException. Вы можете вызвать это исключение сами. Для этого воспользуйтесь функцией AfxThrowResourceException:void
Класс CUserException
Класс CUserException Если какая-либо операция при работе приложения закончилась с ошибкой, оно может вызвать функцию AfxMessageBox, чтобы сообщить об этом пользователю, а затем вызвать исключение с объектом класса CUserException. Чтобы создать объект класса CUserException и вызвать исключение,
Класс ObjectBoardABC
Класс ObjectBoardABC Класс ObjectBoardABC является потомком класса BoardABC и представляет графический объект Доска с объектами.Конструкторы класса ObjectBoardABC constructor Create(x,y,nx,ny,szx,szy: integer; cl: GColor); Создает доску с объектами nx на ny клеток цвета cl с размером клетки (szx, szy) в позиции (x,
У11.2 Класс и его АТД
У11.2 Класс и его АТД Проверьте все предусловия и аксиомы АТД STACK, введенного в предыдущих лекциях, и покажите, отображаются ли они в классе STACK4, а если да, то