Funktion einkürzen

dertobian

Mitglied
Hallo,

ich habe mehrere C++ -Funktionen, in der ein String übergeben wird und immer wieder ähnliche Bedingungen abgefragt werden.

So etwa:
Code:
EventList *EventList::getMatchingEvents(String^ forensix_attr, String^ rel_op, int value){
EventList *el = new EventList();
	int size = 0;

	for(int i = 0; i < this->entry.size(); i++){
		if(this->entry[i]->show){
			if((forensix_attr == "syscall") && (this->compare(this->entry[i]->audit_record->syscall, rel_op, value))){
				el->resize(++size); el->entry[size - 1]->audit_record = this->entry[i]->audit_record; }
			else if((forensix_attr == "date") && (this->compare(this->entry[i]->audit_record->date, rel_op, value))){
				el->resize(++size); el->entry[size - 1]->audit_record = this->entry[i]->audit_record; }
			else if((forensix_attr == "pid") && (this->compare(this->entry[i]->audit_record->pid, rel_op, value))){ 
				el->resize(++size); el->entry[size - 1]->audit_record = this->entry[i]->audit_record; }
...
...
}

Kann ich das irgendwie kürzen? Das Problem ist, ich weiß nicht, ob ich irgendwie anders, direkt abhängig vom forensix_attr auf ein Struct-Element zugreifen kann...

Gruß Tobian.
 
Zurück