LINUX.ORG.RU

Сообщения Karlsruher

 

Перегруженный оператор

Форум — Development

Написал класс для работы с комплексными числами. Перегрузил оператор "/". Выглядит это примерно так:

class CComplex { private: double m_dReal; double m_dImg;

public:

//------------------------------------- // / operator //------------------------------------- CComplex operator/(double dI) { CComplex cCmplx;

cCmplx.Real(m_dReal / dI); cCmplx.Img( m_dImg / dI); return cCmplx; }

//------------------------------------- // / operator //------------------------------------- CComplex operator/(CComplex& cCmplx) { double dReal; double dImg; double dMod=cCmplx.Real()*cCmplx.Real() + cCmplx.Img()*cCmplx.Img();

dReal = (m_dReal*cCmplx.Real() + m_dImg*cCmplx.Img())/dMod; dImg = (cCmplx.Real()*m_dImg - m_dReal*cCmplx.Img())/dMod; CComplex cCmplx1(dReal, dImg); return cCmplx1; } };

Теперь могу делить комплексное число на комплексное число, и комплексное число на переменную.

Но не знаю, что надо сделать, чтоб разделить число на комплексное число. Т.е. что сделать, чтоб заработало:

CComplex c1, c2;

c1 = 1/c2;

????

Спасибо

Karlsruher
()

Linuxtag in Karlsruhe

Форум — General
Karlsruher
()

RSS подписка на новые темы