#include <map>
#include <vector>
#include <iostream> // C++ header file for I/O
#include <fstream>
#include <sstream>
#include <cmath>
#include <ctime>
#include <vector>
#include <ctime>
#include <cmath>
#include <math.h> /* round, floor, ceil, trunc */
#include <map>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <cstdlib>
#include <algorithm>
#include <map>
#include <windows.h>
using namespace std;
int main()
{
int i,j;
int Q[10][10]={
{1,0,1,0,1,1,0,1,1,1},
{1,0,0,1,1,1,1,0,1,0},
{0,1,1,0,0,0,0,0,0,1},
{1,0,0,0,1,1,0,1,0,1},
{1,1,1,1,0,0,0,0,1,1},
{1,1,0,0,0,1,0,1,1,0},
{1,1,0,0,0,0,0,0,1,1},
{0,1,1,0,0,0,0,0,0,1},
{1,1,0,0,0,0,0,0,1,1},
{1,0,1,0,1,1,0,1,1,1}
};
std::multimap<int,int> mymap;
std::vector<std::vector<int>> myvector;
for(i = 0 ; i<10 ;i++)
{
int key = 0;
for(j = 0 ; j<10 ;j++)
{
key += Q[i][j] << j;
}
mymap.insert(std::pair<int,int>(key,i));
}
int maxCardinalite = 0;
int nbCategorie = 0;
for(auto iter = mymap.begin() ; iter != mymap.end() ; iter = mymap.upper_bound(iter->first))
{
std::vector<int> mylist;
for(auto iter2 = iter ; iter2 != mymap.upper_bound(iter->first) ; ++iter2)
{
mylist.push_back(iter2->second);
maxCardinalite = (maxCardinalite > mylist.size()) ? maxCardinalite : mylist.size();
}
myvector.push_back(mylist);
nbCategorie++;
}
int* R = (int*)malloc(maxCardinalite*nbCategorie*sizeof(int));
ZeroMemory(R,maxCardinalite*nbCategorie*sizeof(int));
std::sort(begin(myvector),end(myvector),[](std::vector<int> a, std::vector<int> b){return a[0]<b[0];});
int ligne = 0;
for(const auto& i : myvector) // i
{
int colone = 0;
for(auto j : i) // j : i
{
R[ligne*maxCardinalite+colone] = j; // i
colone++;
}
ligne++;
}
return 0;
}
나는 다음과 같은 오류를 얻을. 도와 줄수있으세요?C++ : 오류 구문 오류
source3.cc (113)는 오류 C2143 : 구문 오류 ''이전 ','누락 source3.cc (113) : 오류 C2530 'I'참조 초기화해야 source3.cc (113) : 오류 C3531 : 'i': 형식에 'auto'가 포함 된 기호 에 초기화 프로그램 source3.cc (114)가 있어야합니다. 오류 C2143 : 구문 오류 : ''이 없습니다. before '{'
내가 게시 한 내용이 길이가 84 줄에 불과할 때 113 행에 오류가 발생하는 경우 도움이 될 것입니다. 나를 잘못 이해하지 마라. 나는 모든 코드를 게시해야한다는 말은 아니며, 불쾌한 라인이 표시된 관련 부분 만 표시한다. – Borgleader
VS 2010은 내 지식에 따라 범위 루프를 지원하지 않습니다. – molbdnilo
이 코드는 VS2013에서 컴파일됩니다. 업그레이드. –