!= check on struct datatype

Just overload the == and != operators.

struct settings_type {
  int one=10;
  int two=20;
  float three=30.0;
  bool operator==(settings_type const & rhs) const {
    return this->one == rhs.one
        && this->two == rhs.two
        && this->three == rhs.three;
  }
  bool operator!=(settings_type const & rhs) const {
    return !(*this == rhs);
  }
}

Then you can use

settings_type s1;
settings_type s2;
s1.one = 42;
if (s1 != s2)
  // True

Pieter