|
401 | 401 | constexpr T imag() const;
|
402 | 402 | constexpr void imag(T);
|
403 | 403 |
|
404 |
| - constexpr complex<T>& operator= (const T&); |
405 |
| - constexpr complex<T>& operator+=(const T&); |
406 |
| - constexpr complex<T>& operator-=(const T&); |
407 |
| - constexpr complex<T>& operator*=(const T&); |
408 |
| - constexpr complex<T>& operator/=(const T&); |
| 404 | + constexpr complex& operator= (const T&); |
| 405 | + constexpr complex& operator+=(const T&); |
| 406 | + constexpr complex& operator-=(const T&); |
| 407 | + constexpr complex& operator*=(const T&); |
| 408 | + constexpr complex& operator/=(const T&); |
409 | 409 |
|
410 | 410 | constexpr complex& operator=(const complex&);
|
411 |
| - template<class X> constexpr complex<T>& operator= (const complex<X>&); |
412 |
| - template<class X> constexpr complex<T>& operator+=(const complex<X>&); |
413 |
| - template<class X> constexpr complex<T>& operator-=(const complex<X>&); |
414 |
| - template<class X> constexpr complex<T>& operator*=(const complex<X>&); |
415 |
| - template<class X> constexpr complex<T>& operator/=(const complex<X>&); |
| 411 | + template<class X> constexpr complex& operator= (const complex<X>&); |
| 412 | + template<class X> constexpr complex& operator+=(const complex<X>&); |
| 413 | + template<class X> constexpr complex& operator-=(const complex<X>&); |
| 414 | + template<class X> constexpr complex& operator*=(const complex<X>&); |
| 415 | + template<class X> constexpr complex& operator/=(const complex<X>&); |
416 | 416 | };
|
417 | 417 | }
|
418 | 418 | \end{codeblock}
|
|
445 | 445 | constexpr float imag() const;
|
446 | 446 | constexpr void imag(float);
|
447 | 447 |
|
448 |
| - constexpr complex<float>& operator= (float); |
449 |
| - constexpr complex<float>& operator+=(float); |
450 |
| - constexpr complex<float>& operator-=(float); |
451 |
| - constexpr complex<float>& operator*=(float); |
452 |
| - constexpr complex<float>& operator/=(float); |
453 |
| - |
454 |
| - constexpr complex<float>& operator=(const complex<float>&); |
455 |
| - template<class X> constexpr complex<float>& operator= (const complex<X>&); |
456 |
| - template<class X> constexpr complex<float>& operator+=(const complex<X>&); |
457 |
| - template<class X> constexpr complex<float>& operator-=(const complex<X>&); |
458 |
| - template<class X> constexpr complex<float>& operator*=(const complex<X>&); |
459 |
| - template<class X> constexpr complex<float>& operator/=(const complex<X>&); |
| 448 | + constexpr complex& operator= (float); |
| 449 | + constexpr complex& operator+=(float); |
| 450 | + constexpr complex& operator-=(float); |
| 451 | + constexpr complex& operator*=(float); |
| 452 | + constexpr complex& operator/=(float); |
| 453 | + |
| 454 | + constexpr complex& operator=(const complex&); |
| 455 | + template<class X> constexpr complex& operator= (const complex<X>&); |
| 456 | + template<class X> constexpr complex& operator+=(const complex<X>&); |
| 457 | + template<class X> constexpr complex& operator-=(const complex<X>&); |
| 458 | + template<class X> constexpr complex& operator*=(const complex<X>&); |
| 459 | + template<class X> constexpr complex& operator/=(const complex<X>&); |
460 | 460 | };
|
461 | 461 |
|
462 | 462 | template<> class complex<double> {
|
|
472 | 472 | constexpr double imag() const;
|
473 | 473 | constexpr void imag(double);
|
474 | 474 |
|
475 |
| - constexpr complex<double>& operator= (double); |
476 |
| - constexpr complex<double>& operator+=(double); |
477 |
| - constexpr complex<double>& operator-=(double); |
478 |
| - constexpr complex<double>& operator*=(double); |
479 |
| - constexpr complex<double>& operator/=(double); |
480 |
| - |
481 |
| - constexpr complex<double>& operator=(const complex<double>&); |
482 |
| - template<class X> constexpr complex<double>& operator= (const complex<X>&); |
483 |
| - template<class X> constexpr complex<double>& operator+=(const complex<X>&); |
484 |
| - template<class X> constexpr complex<double>& operator-=(const complex<X>&); |
485 |
| - template<class X> constexpr complex<double>& operator*=(const complex<X>&); |
486 |
| - template<class X> constexpr complex<double>& operator/=(const complex<X>&); |
| 475 | + constexpr complex& operator= (double); |
| 476 | + constexpr complex& operator+=(double); |
| 477 | + constexpr complex& operator-=(double); |
| 478 | + constexpr complex& operator*=(double); |
| 479 | + constexpr complex& operator/=(double); |
| 480 | + |
| 481 | + constexpr complex& operator=(const complex&); |
| 482 | + template<class X> constexpr complex& operator= (const complex<X>&); |
| 483 | + template<class X> constexpr complex& operator+=(const complex<X>&); |
| 484 | + template<class X> constexpr complex& operator-=(const complex<X>&); |
| 485 | + template<class X> constexpr complex& operator*=(const complex<X>&); |
| 486 | + template<class X> constexpr complex& operator/=(const complex<X>&); |
487 | 487 | };
|
488 | 488 |
|
489 | 489 | template<> class complex<long double> {
|
|
499 | 499 | constexpr long double imag() const;
|
500 | 500 | constexpr void imag(long double);
|
501 | 501 |
|
502 |
| - constexpr complex<long double>& operator= (long double); |
503 |
| - constexpr complex<long double>& operator+=(long double); |
504 |
| - constexpr complex<long double>& operator-=(long double); |
505 |
| - constexpr complex<long double>& operator*=(long double); |
506 |
| - constexpr complex<long double>& operator/=(long double); |
507 |
| - |
508 |
| - constexpr complex<long double>& operator=(const complex<long double>&); |
509 |
| - template<class X> constexpr complex<long double>& operator= (const complex<X>&); |
510 |
| - template<class X> constexpr complex<long double>& operator+=(const complex<X>&); |
511 |
| - template<class X> constexpr complex<long double>& operator-=(const complex<X>&); |
512 |
| - template<class X> constexpr complex<long double>& operator*=(const complex<X>&); |
513 |
| - template<class X> constexpr complex<long double>& operator/=(const complex<X>&); |
| 502 | + constexpr complex& operator= (long double); |
| 503 | + constexpr complex& operator+=(long double); |
| 504 | + constexpr complex& operator-=(long double); |
| 505 | + constexpr complex& operator*=(long double); |
| 506 | + constexpr complex& operator/=(long double); |
| 507 | + |
| 508 | + constexpr complex& operator=(const complex&); |
| 509 | + template<class X> constexpr complex& operator= (const complex<X>&); |
| 510 | + template<class X> constexpr complex& operator+=(const complex<X>&); |
| 511 | + template<class X> constexpr complex& operator-=(const complex<X>&); |
| 512 | + template<class X> constexpr complex& operator*=(const complex<X>&); |
| 513 | + template<class X> constexpr complex& operator/=(const complex<X>&); |
514 | 514 | };
|
515 | 515 | }
|
516 | 516 | \end{codeblock}
|
|
577 | 577 |
|
578 | 578 | \indexlibrarymember{operator+=}{complex}%
|
579 | 579 | \begin{itemdecl}
|
580 |
| -constexpr complex<T>& operator+=(const T& rhs); |
| 580 | +constexpr complex& operator+=(const T& rhs); |
581 | 581 | \end{itemdecl}
|
582 | 582 |
|
583 | 583 | \begin{itemdescr}
|
|
596 | 596 |
|
597 | 597 | \indexlibrarymember{operator-=}{complex}%
|
598 | 598 | \begin{itemdecl}
|
599 |
| -constexpr complex<T>& operator-=(const T& rhs); |
| 599 | +constexpr complex& operator-=(const T& rhs); |
600 | 600 | \end{itemdecl}
|
601 | 601 |
|
602 | 602 | \begin{itemdescr}
|
|
615 | 615 |
|
616 | 616 | \indexlibrarymember{operator*=}{complex}%
|
617 | 617 | \begin{itemdecl}
|
618 |
| -constexpr complex<T>& operator*=(const T& rhs); |
| 618 | +constexpr complex& operator*=(const T& rhs); |
619 | 619 | \end{itemdecl}
|
620 | 620 |
|
621 | 621 | \begin{itemdescr}
|
|
633 | 633 |
|
634 | 634 | \indexlibrarymember{operator/=}{complex}%
|
635 | 635 | \begin{itemdecl}
|
636 |
| -constexpr complex<T>& operator/=(const T& rhs); |
| 636 | +constexpr complex& operator/=(const T& rhs); |
637 | 637 | \end{itemdecl}
|
638 | 638 |
|
639 | 639 | \begin{itemdescr}
|
|
651 | 651 |
|
652 | 652 | \indexlibrarymember{operator+=}{complex}%
|
653 | 653 | \begin{itemdecl}
|
654 |
| -template<class X> constexpr complex<T>& operator+=(const complex<X>& rhs); |
| 654 | +template<class X> constexpr complex& operator+=(const complex<X>& rhs); |
655 | 655 | \end{itemdecl}
|
656 | 656 |
|
657 | 657 | \begin{itemdescr}
|
|
669 | 669 |
|
670 | 670 | \indexlibrarymember{operator-=}{complex}%
|
671 | 671 | \begin{itemdecl}
|
672 |
| -template<class X> constexpr complex<T>& operator-=(const complex<X>& rhs); |
| 672 | +template<class X> constexpr complex& operator-=(const complex<X>& rhs); |
673 | 673 | \end{itemdecl}
|
674 | 674 |
|
675 | 675 | \begin{itemdescr}
|
|
687 | 687 |
|
688 | 688 | \indexlibrarymember{operator*=}{complex}%
|
689 | 689 | \begin{itemdecl}
|
690 |
| -template<class X> constexpr complex<T>& operator*=(const complex<X>& rhs); |
| 690 | +template<class X> constexpr complex& operator*=(const complex<X>& rhs); |
691 | 691 | \end{itemdecl}
|
692 | 692 |
|
693 | 693 | \begin{itemdescr}
|
|
705 | 705 |
|
706 | 706 | \indexlibrarymember{operator/=}{complex}%
|
707 | 707 | \begin{itemdecl}
|
708 |
| -template<class X> constexpr complex<T>& operator/=(const complex<X>& rhs); |
| 708 | +template<class X> constexpr complex& operator/=(const complex<X>& rhs); |
709 | 709 | \end{itemdecl}
|
710 | 710 |
|
711 | 711 | \begin{itemdescr}
|
|
0 commit comments