次の方法で共有


operator- (<complex>)

2 個の複雑な、1 を減算しますが、実際という部分の型のサブセットに属する場合があります。

template<class Type>
   complex<Type> operator-(
      const complex<Type>& _Left,
      const complex<Type>& _Right
   );
template<class Type>
   complex<Type> operator-(
      const complex<Type>& _Left,
      const Type& _Right
   );
template<class Type>
   complex<Type> operator-(
      const Type& _Left,
      const complex<Type>& _Right
   );
template<class Type>
   complex<Type> operator-(
      const complex<Type>& _Left
   );

パラメーター

  • _Left
    2 個の複合型かによって引く複素数のパラメーターの型である数の狭い - 操作。

  • _Right
    2 個の複合型かによって引く複素数のパラメーターの型である数の 2 - 操作。

戻り値

_Leftから _Right の減算になる複合型は、値をパラメーターで指定されている 2 桁の数値入力します。

解説

操作は簡単な算術演算が特定の形式のデータへの変換なしで実行できるようにオーバーロードされます。

単項演算子は、複素数の符号を変更し、実数部が入力した数の実数部の否定であり、架空の部分が数値入力の架空の部分の負の値を返します。

使用例

// complex_op_sub.cpp
// compile with: /EHsc
#include <complex>
#include <iostream>

int main( )
{
   using namespace std;
   double pi = 3.14159265359;

   // Example of the first member function
   // type complex<double> minus type complex<double>
   complex <double> cl1 ( 3.0 , 4.0 );
   complex <double> cr1 ( 2.0 , 5.0 );
   complex <double> cs1 = cl1 - cr1;

   cout << "The left-side complex number is cl1 = " << cl1 << endl;
   cout << "The right-side complex number is cr1 = " << cr1 << endl;
   cout << "Difference of two complex numbers is: cs1 = " << cs1 << endl;
   double abscs1 = abs ( cs1 );
   double argcs1 = arg ( cs1 );
   cout << "The modulus of cs1 is: " << abscs1 << endl;
   cout << "The argument of cs1 is: "<< argcs1 << " radians, which is " 
        << argcs1 * 180 / pi << " degrees." << endl << endl; 

   // Example of the second member function
   // type complex<double> minus type double
   complex <double> cl2 ( 3.0 , 4.0 );
   double cr2 =5.0;
   complex <double> cs2 = cl2 - cr2;

   cout << "The left-side complex number is cl2 = " << cl2 << endl;
   cout << "The right-side complex number is cr2 = " << cr2 << endl;
   cout << "Difference of two complex numbers is: cs2 = " << cs2 << endl;
   double abscs2 = abs ( cs2 );
   double argcs2 = arg ( cs2 );
   cout << "The modulus of cs2 is: " << abscs2 << endl;
   cout << "The argument of cs2 is: "<< argcs2 << " radians, which is " 
        << argcs2 * 180 / pi << " degrees." << endl << endl;

   // Example of the third member function
   // type double minus type complex<double>
   double cl3 = 5.0;
   complex <double> cr3 ( 3.0 , 4.0 );
   complex <double> cs3 = cl3 - cr3;

   cout << "The left-side complex number is cl3 = " << cl3 << endl;
   cout << "The right-side complex number is cr3 = " << cr3 << endl;
   cout << "Difference of two complex numbers is: cs3 = " << cs3 << endl;
   double abscs3 = abs ( cs3 );
   double argcs3 = arg ( cs3 );
   cout << "The modulus of cs3 is: " << abscs3 << endl;
   cout << "The argument of cs3 is: "<< argcs3 << " radians, which is " 
        << argcs3 * 180 / pi << " degrees." << endl << endl; 

   // Example of the fourth member function
   // minus type complex<double>
   complex <double> cr4 ( 3.0 , 4.0 );
   complex <double> cs4 = - cr4;

   cout << "The right-side complex number is cr4 = " << cr4 << endl;
   cout << "The result of the unary application of - to the right-side"
        << "\n complex number is: cs4 = " << cs4 << endl;
   double abscs4 = abs ( cs4 );
   double argcs4 = arg ( cs4 );
   cout << "The modulus of cs4 is: " << abscs4 << endl;
   cout << "The argument of cs4 is: "<< argcs4 << " radians, which is " 
        << argcs4 * 180 / pi << " degrees." << endl << endl;  
}
  
  
  
  

必要条件

ヘッダー: <complex>

名前空間: std