私はC++を学ぼうとしています。実験中、私は次のコードを入力しました。それが機能することを期待していませんでしたが、機能することを期待していました。
int one = 1, two = 2;
one, two = two, one;
cout << "one = " << one << "\n";
cout << "two = " << two << "\n";
コンパイラが文句を言わなかったという事実に勇気づけられました。これは、Pythonについて私が気に入っている主な機能のひとつであり、これまでに学んだほとんどすべてのプログラミング言語が一致しないためです。つまり、割り当てる前に複数の式を評価する機能です。一時変数を使用せずに結果。ただし、実行したときに、このコードは効果がないように見えることがわかりました。
少し遊んだ後、変数two
が実際に設定されていることに気付きました。したがって、このコードを実行すると、次のようになります。
one, two = 3, 4;
two
3に等しくなりone
ますが、変更されません。そして私の質問は、コンパイラがこのステートメントで正確に何をしているのかということです。私は私の人生のためにそれを理解することはできません。
ありがとう、ブランドン