Ничто не мешает вам вставить этот код непосредственно в метод класса, но лучше всего избегать побочных эффектов ; Вы хотите изменить только переменные, определенные в методе или в списке аргументов методов, а затем использовать возвращаемое значение во внешнем контексте. Из этого правила есть множество исключений, но я думаю, что вы делаете вот что:
// caller.cpp
#include <iostream>
#include “<path_to_headers>/classname.h”
using namespace std;
const int B_LEN = 4;
int b[B_LEN] = {0,1,2,3};
int c = 0;
int main(int argc, char** argv)) {
int a;
cout << “set a to integer value: “;
cin >> a;
cout << endl;
for (int i=0; i<B_LEN; i++) {
if (classname::check(a,b[i])) { //pass a and b[i] as arguments since classname needs to work with them
cout << “correct!” << endl;
c++;
}
else {
cout << “wrong!” << endl;
}
}
return EXIT_SUCCESS;
}
//classname.cpp
#include “<path_to_headers>/classname.h”
bool classname::check(int a, int b) {
return a == b;
}