+ 1
C++ python functions. Bless or mess?
So I am kinda new to C++ and recently learnt functions. I never really liked the "cout" and "cin" statements and always keep forgetting, should I use << or >>. So i decided to make a function that works as simple as "print" in python. So the question is, is it a good idea to use these simple functions or am I just being stupidly lazy? And also how can i make input() (and other simple functions) work, if I at all should? Code: https://code.sololearn.com/c7j8893aiO6X/?ref=app (Sorry for bad code).
5 odpowiedzi
+ 3
Your Functions are for your understandings.. So you have to decide about yourself about the function... But for others its a mess.
What if type of data is not int? Are you going overload functions?
+ 1
I often prefer printf() to cout<< bc it's shorter and easier to control the width of the displayed fields for nice alignment, i.e.:
printf("x = %03d\n", x);
vs:
cout << "x = " << setw(3) << x << '\n';
But I like how cout<< displays floating point numbers.
What helped me not confuse << and >> was to realize that cout and cin are objects that have overloaded the shift left << and shift right >> operators. cout is an output stream, so it has << towards it, bc you send things to it, cin is an input stream and has >> towards the variables that receive from it.
+ 1
Thank you everyone for anwsering, I got the point now.
+ 1
input() from python always returns a string, so it should be easier to implement:
string input() {
string s;
getline(cin, s);
return s;
}
You'll have to use C++ specific functions to convert it to different types though:
int i = stoi(input());
double x = stod(input());
like in this example:
https://code.sololearn.com/cKZd1zNc7Xe4
I also found here https://gist.github.com/ilebedie/f006674098a1adaab731 an example of python style print() that accepts multiple arguments, but idk to explain it:
https://code.sololearn.com/co4GYHTim6VU
Btw, you'll have to provide input when you run it here on SL and it has to be on two lines, smth like this:
123
Hello