[英]Class Digit in C++
問題:
請創建一個 class 數字表示以十為底的單個數字。
Class 數字應包含兩個構造函數,一個沒有參數並將數字設置為0,另一個有一個integer 參數並使用該參數設置數字。
創建兩個 function 成員 setDigit 和 getDigit 來設置和獲取數字 int integer 類型。 如果 setDigit 接收到不合理的參數,則應將 digit 設置為 0。
我不知道我的代碼有多么錯誤。 在線法官顯示錯誤答案。 請給我一些想法。 謝謝。
#include <limits.h>
class Digit
{
public:
int digit;
Digit()
{
digit = 0;
}
Digit(int n)
{
digit = n;
}
void setDigit(int n)
{
if (n < INT_MIN || n > INT_MAX)
digit = 0;
else
digit = n;
}
int getDigit() const
{
return digit;
}
};
您可能想要使用 0 和 9 代替 INT_MIN (-INT_MAX - 1) 和 INT_MAX (2^31 - = 2147483647 在我的盒子上)。 如果需要,可以使用 uint8_t 代替 int。 在構造函數中也使用相同的邏輯,即從它們調用 setDigit():
Digit() {
setDigit(0);
}
Digit(int n) {
setDigit(n);
}
void setDigit(int n) {
digit = (n >= 0 && n <= 9) ? n : 0;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.