아델
718
2018-03-27 20:04:57
2
719

구조체 변수 전방 선언 ,프로토타입 선언 오류




Problem  구조체 변수를 타입으로 하는 큐를 사용하고 싶어서  변수를 선언했는데 오류가 납니다..


벡터는 에러가 없고요 이유를 모르겠습니다.. 전방선언도 해주고 잘했다고 생각했는데 이유를 모르겠습니다..


오류코드 C2027 정의되지 않은 형식 'Problem'을(를) 사용했습니다. 라고 뜹니다.


아래는 소스 코드입니다.




#include<iostream>

#include<string>

#include<vector>

#include<queue>

using namespace std;

struct Problem;

queue<Problem>Q;

vector<Problem>Bank;

struct Problem {

int arr[5] = { 3,3,0,0,0 };//초기 상태;

int brr[5];

Problem() {//생성자

for (int i = 0; i < 5; i++) {

brr[i] = arr[i];

}

Problem a = *this;

Bank.push_back(a);

}

void original() {//원본 유지

for (int i = 0; i < 5; i++) {

arr[i] = brr[i];

}

}

void clear() {//옮기기 전 상태로 이동

for (int i = 0; i < 5; i++) {

brr[i] = arr[i];

}

}

};

int main() {

 

Problem mc;

cout << mc.arr[0] << mc.arr[1] << mc.arr[2] << mc.arr[3] << mc.arr[4] << endl;

return 0;

}


 
0
  • 답변 2

  • 아델
    718
    2018-03-28 17:45:46

    S.K.K님 감사합니다.

  • 로그인을 하시면 답변을 등록할 수 있습니다.