2014-09-21 2 views
1

-Wreorder 오류가 계속 발생하면서 "will will be initialize"라고 말합니다.하지만 int awidth, height 두 변수가 있기 때문에 매우 이상합니다. 그런 다음 초기화 목록에서 너비 (col_width), 높이 (col_height) 및 경고 메시지가 나타납니다. 경고 : 'FixedWriteLayout :: height'는 [-Wreorder] 뒤에 0xint width, height;g ++ 경고 "실제 값과 관계없이"초기화됩니다.

분명히 내 초기화는 변수가 정의 된 순서와 똑같은데, 높이를 초기화해야합니다. 왜 그렇게 경고합니까 ??? 그리고 스위치를 지정해도 "경고 : [FixedWriteLayout :: width]가 [-Wreorder] 뒤에 초기화됩니다. int width, height;"

어떤 의미인지는 모르겠지만, 어떤 순서로 입력했는지에 관계없이이 경고 메시지가 표시됩니다. 큰 문제는 아니지만 단지 경고 일 뿐이지 만 매우 실망스럽고 OCD를 유발합니다. P

P. 나는 비슷한 질문을했다는 것을 알고있다. 그러나이 질문은 중복되지 않는다. 다른 질문은 질문자가 잘못된 순서로 초기화 목록을 가지고 있다는 사실에 근거하고 있었고, 나의 질문은 초기화가 차이를 만들지 않습니다. 그래서 이것을 중복으로 표시하지 마십시오.)

+4

[MCVE] (http://stackoverflow.com/help/mcve)를 게시하십시오. – juanchopanza

+0

나는 또한 Qt를 사용하고 있으며, 경고를 끄지 않기를 바란다. 누군가 전에이 문제에 부딪혔다면 궁금하다. – Tory

답변

4

실제로는 문제가 경고/오류 메시지에 없었던 시간이었습니다. 나 또한 기본 클래스가 초기화되었고 실제로 오류가 발생했습니다.

내가이 있었다 :이이었다 필요 무엇

MyClass::MyClass(QWidget *parent, int col_width, int row_height) 
    : width(col_width), height(row_height), BaseClass(parent) {} 
              //^^^^^^^^^^ Here's the Problem!!! 

:

MyClass::MyClass(QWidget *parent, int col_width, int row_height) 
    : BaseClass(parent), width(col_width), height(row_height) {} 

그냥 메시지가 높이이 후 초기화 된 것을 경고했기 때문에, 저를 던져, 그것은 'didn를 무엇이든을 말하십시오 BaseClass, 실제 문제는이었다.

관련 문제