好的,所以我做了一个小程序,它要求用户输入,然后加、减等。但不知何故,它不能正常工作。它必须为每个函数使用 x 和 y 输入,但似乎它使用了以前的输出。
这是一个代码:
主要的:
// ========================================================================
// NumberProject.cpp : Defines the entry point for the console application.
// ========================================================================
// ==================
#include "stdafx.h"
#include <iostream>
// ==================
// ================
// Class Inclusions
// ==================
#include "Number.h"
// ==================
// ====================
using namespace std;
// ====================
void Banner();
// =============
int main( ) {
// ================================
// Variable and Object Declarations
// ============
char answer;
bool goAgain = true;
int integerValue;
Number x;
Number y;
Banner();
// =========
// User loop
// ===================
while ( goAgain ) {
cout << "Enter an integer: ";
cin >> integerValue;
x.Set( integerValue );
cout << "Enter an integer: ";
cin >> integerValue;
y.Set( integerValue );
cout << endl;
// Addition
x.Add( y );
cout << "Addition: ";
x.Output( );
// Subtraction
x.Subtract( y );
cout << "Subtraction: ";
x.Output( );
// Multiplication
x.Multiply( y );
cout << "Multiplication: ";
x.Output( );
// Division
x.Divide( y );
cout << "Division: ";
x.Output( );
// ===========================
// User loop termination code.
// ====================================================
cout << "Would you like go again continue? (y/n)" << endl;
cin >> answer;
if ( answer == 'n' )
goAgain = false;
// ====================
} // while
// ==========
return 0;
} // Function main( )
// =====================
void Banner() {
cout << "====================================" << endl;
cout << " Welcome to the Number Project " << endl;
cout << "====================================" << endl;
cout << endl;
}
// ================================================================
编号.cpp:
// ==================
#include "StdAfx.h"
#include "math.h" // Needed for sqrt and pow.
#include <string>
#include <iostream>
// ==================
// ================
// Class Inclusions
// ==================
#include "Number.h"
// ==================
// ====================
using namespace std;
// ====================
Number::Number( void ) {
number = 0;
}
Number::Number( int integerValue ) {
number = integerValue;
}
Number::~Number( void ) {
}
int Number::Get( ) {
return number;
}
void Number::Set( int integerValue ) {
number = integerValue;
}
void Number::Output( ) {
cout << number << endl;
cout << endl;
}
void Number::Add( Number otherNumber ) {
number = number + otherNumber.Get();
}
void Number::Subtract( Number otherNumber ) {
number = number - otherNumber.Get();
}
void Number::Multiply( Number otherNumber ) {
number = number * otherNumber.Get();
}
void Number::Divide( Number otherNumber ) {
number = number / otherNumber.Get();
}
// =================================================
编号.h:
// ===========
#pragma once
// ===========
// ==============
class Number {
public:
// ============
// Constructors
// ===============
Number( void );
Number( int );
// ==============
// ==========
// Destructor
// ===============
~Number( void );
int Number::Get( ); // Accessor
void Number::Set( int ); // Mutator
void Number::Output();
void Number::Add( Number );
void Number::Subtract( Number );
void Number::Multiply( Number );
void Number::Divide( Number );
// ===========================
private:
int number;
};
示例输出:
==================================== Welcome to the Number Project ===================================
Enter an integer: 2 Enter an integer: 3 Addition: 5 Subtraction: 2 Multiplication: 6 Division: 2
Would you like go again continue? (y/n)
请帮忙?