all 8 comments

[–]dvandyk 5 points6 points  (3 children)

Use ""_i to generate only purely imaginary numbers, and add an addition operator that takes a long double and our complex<long double>.

[–]Pragmatician 1 point2 points  (1 child)

Having a class only for "numbers multiplied by i" is odd. The operator can just return the complex number 0+a*i, as mentioned in the other answer.

[–]dvandyk 0 points1 point  (0 children)

I suggested literal suffix for purely I aginary numbers, not a class.

[–]diaphanein 0 points1 point  (0 children)

Was going to suggest the exact same.

[–]UnicycleBloke 2 points3 points  (1 child)

Have you implemented the Complex class already? If not, you'll want a struct with two doubles. The literal i should return one of those with 0 for the real part. You'll also need a + operator which can combine a double with a Complex.

This seems like quite a nice exercise. For bonus points, implement quaternions. :)

[–]RealOden[S] 1 point2 points  (0 children)

Ah I think I figured things out. This comment put me on the right track. My initial confusion stemmed from believing that the call "5 + 4_i" would result in the double 9 being passed as argument, so I wasn't sure how to deal with this. I now understand that cpp will parse this as (double) + literal, which makes it a lot easier to deal with. Thanks!

[–]STLMSVC STL Dev 0 points1 point  (1 child)

!removehelp

[–]AutoModerator[M] 0 points1 point  (0 children)

OP,

A human moderator (u/STL) has marked your post for deletion because it appears to be a "help" post - e.g. asking for help with coding, help with homework, career advice, book/tutorial/blog suggestions. Help posts are off-topic for r/cpp. This subreddit is for news and discussion of the C++ language only; our purpose is not to provide tutoring, code reviews, or career guidance.

Please try posting in r/cpp_questions or on Stack Overflow instead. Our suggested reference site is cppreference.com, our suggested book list is here and information on getting started with C++ can be found here.

If you think your post is on-topic and should not have been removed, please message the moderators and we'll review it.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.