문제
특정 텍스트 상자 메시지를 변경하려고합니다. 내 출력이 표시됩니다.
이것이 제가 main ()에있는 것입니다.
#include "form2.h"
....
string recvMSG = "random";
182 :: form2 :: ChangeOutput (recvmsg); ...
내 form2.h 안에 나는 다음과 같이있다.
#include <string.h>
#include <iostream>
#include <stdlib.h>
...
void Form2::changeOutput(string s)
{
QString s1 = i18n(s);
output_box.setText(s1);
}
그러나 나는 여전히 얻는다 : .ui/form2.h : 56 : 오류 : 'String'이 선언되지 않았다.
감사.
편집 :: kk so now show :: tcpclient.cpp : 182 : 오류 : 멤버 함수를 호출 할 수 없습니다.
해결책
string
에 std
네임 스페이스이므로 std::string
, 또는 현재 범위에서 이름을 사용할 수 있도록해야합니다. using namespace std;
또는 using std::string;
.
또한 헤더가 호출됩니다 string
, 아니다 string.h
, 이런 식으로 포함하십시오.
#include <string>
일반적으로 QT를 사용하고 싶을 수도 있습니다 QString
대신에 std::string
일반적으로 취하는 QT 구성 요소와 관련하여 사용하는 경우 QString
매개 변수.
다른 팁
헤더를 사용해야한다고 생각합니다 <string>
그리고 사용하십시오 std::string
(더 나을 것입니다 const std::string &
)
제휴하지 않습니다 StackOverflow