Expected `;' before "char"

Insane__

Голова вовсе не варит. Как исправить ошибку?
#include <iostream>
#include <vector>
#include <set>
#include <string>
#include <windows.h>
 
using namespace std;
 
 
void print_vowels(set<string> s){
     vector<char> setIntersection;
     vector<char> vector((s.begin())->begin(), (s.begin())->end());
     for(set<string>::iterator it = s.begin(); it != s.end(); it++){               
         vector<char> vector2(it->begin(), it->end());
         set_intersection(vector.begin(), vector.end(),vector2.begin(),
         vector2.end(),back_inserter(setIntersection));
     }
     for(int i = 0; i < setIntersection.size(); i++){
             cout<<setIntersection[i];
     }
}
 
int main(){
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    string names[5] = {"ГЈГ°Г*äóñè","õâèëèГ*ГЁ","ãîäèГ*ГЁ","Г¤Г*Ві","ðîêè"};
    set<string> set_names;
    for(int i = 0; i < 5; i++){
            cout << names[i] << endl;
    }
    for(int i = 0; i < 5; i++){
            set_names.insert(names[i]);
    }
    cout<<endl;
    print_vowels(set_names);
    cin.get();
    cin.get();
    return 0;
}
1 ответ

Insane__

Смотри вначале надо подлючить библиотек
#include <algorithm>
чтобы использовать
set_intersection()
И ещё парочка молочей по именам векторов, а именно
vector<char> vector((s.begin())->begin(), (s.begin())->end());
заменить на
vector<char> vector1((s.begin())->begin(), (s.begin())->end());
Короче в итоге такой текст:
#include <iostream>
#include <vector>
#include <set>
#include <string>
#include <windows.h>
#include <algorithm>
 
using namespace std;
 
 
void print_vowels(set<string> s){
     vector<char> setIntersection;
     vector<char> vector1((s.begin())->begin(), (s.begin())->end());
     for(set<string>::iterator it = s.begin(); it != s.end(); it++)
        {
         vector<char> vector2(it->begin(), it->end());
         set_intersection(vector1.begin(), vector1.end(),vector2.begin(), vector2.end(), back_inserter(setIntersection));
        }
     for(int i = 0; i < setIntersection.size(); i++){
             cout<<setIntersection[i];
     }
}
 
int main(){
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    string names[5] = {"градуси","хвилини","години","дні","роки"};
    set<string> set_names;
    for(int i = 0; i < 5; i++){
            cout << names[i] << endl;
    }
    for(int i = 0; i < 5; i++){
            set_names.insert(names[i]);
    }
    cout<<endl;
    print_vowels(set_names);
    cin.get();
    cin.get();
    return 0;
}