如何通过C++的set和get实现数据验证

avatar
作者
猴君
阅读量:0

在 C++ 中,使用 setget 成员函数可以实现对数据的有效性检查和验证。以下是一个简单的示例,展示了如何使用这些方法验证一个整数是否在指定范围内:

#include <iostream> #include <set>  class DataValidator { private:     int data;     std::set<int> min_max_range;  public:     DataValidator(int data, std::set<int> min_max_range) : data(data), min_max_range(min_max_range) {}      bool setData(int data) {         if (validateData(data)) {             this->data = data;             return true;         } else {             std::cout << "Invalid data. Data not set." << std::endl;             return false;         }     }      int getData() const {         return data;     }  private:     bool validateData(int data) const {         if (data >= min_max_range.begin() && data <= min_max_range.end()) {             return true;         } else {             return false;         }     } };  int main() {     std::set<int> range = {1, 100};     DataValidator validator(0, range);      validator.setData(50);     std::cout << "Data: " << validator.getData() << std::endl;      validator.setData(200); // This will be considered as invalid data     std::cout << "Data: " << validator.getData() << std::endl;      return 0; } 

在这个示例中,我们创建了一个名为 DataValidator 的类,它包含一个整数 data 和一个表示允许的最小和最大值的集合 min_max_range。我们使用 setData 成员函数设置数据,并在设置之前使用 validateData 函数验证数据是否在允许的范围内。如果数据有效,则设置新的数据值;否则,不更改当前值。getData 成员函数用于获取当前的数据值。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!