首页 > 解决方案 > 是否可以通过使用其他变量来为变量分配值而不更改它们在 C++ 中的值。?

问题描述

我正在尝试从 varA 和 varB 分配 varC 的值,而不更改 varA 和 varB 的值。但似乎 varA 和 varB 在为 varC 分配值时会与 varC 一起自动更改。这是我的代码。

#include <iostream>
using namespace std;
main ()
{
    int varA = 10 ; // a = 10
    int varB = 10; // b = 10
    cout << "The exact value of varA is: " << varA <<'\n';
    cout << "The exact value of varB is: " << varB <<'\n';
    int varC = (++ ++ ++ ++ ++ ++ ++ ++ ++ ++ varA) += (varC = ++varB);
    cout << "After assigning the value for varC The value of varA is: " << varA <<'\n';
    cout << "After assigning the value for varC The value of varB is: " << varB <<'\n';

    cout << "The assigned value of varC is: " << varC <<'\n';
    cout << "The sum of varA, varB and varC is: " << varA + varB + varC << '\n';
    return 0;

标签: c++

解决方案


递增运算符 operator++递增操作数的值,然后返回对它的引用。

operator+=同样将左侧的值增加右侧的值,然后返回对它的引用。

在你的表达中,你多次打电话。您明确地告诉编译器您希望修改您的值。如果您只想将数字相加而不修改操作数,请使用operator+


推荐阅读