QT에서 StringStream을 선언 할 때 문제가 있습니다. 일반적으로QT에서 StringStream 선언 문제
aggregate 'std::stringstream ss' has incomplete type and cannot be defined;
QT에서 StringStream을 선언 할 때 문제가 있습니다. 일반적으로QT에서 StringStream 선언 문제
aggregate 'std::stringstream ss' has incomplete type and cannot be defined;
는 QString
및 std::string
을 혼합하거나 관련이없는 좋은 생각 :
std::stringstream ss;
for (int i = 0; i <= path.length()-1; ++i)
{
if (path[i] == '\\')
{
ss << "\\\\";
}
else
{
ss << path[i];
}
}
path = QString::fromStdString(ss.str());//store the stringstream to a string
return path;
오류 메시지는 다음과 같습니다 다음은 내 코드입니다. replace(QChar ch, const QString & after, Qt::CaseSensitivity cs = Qt::CaseSensitive)
과 같은 메소드를 QString
으로 구현해야합니다.
path.replace('\\', "\\\\");
BTW, 당신은 표준 std
스트림의 직접 QString을 사용할 수 없습니다 정의 된 과부하가 없습니다. qPrintable
함수가 도움이 될 수 있습니다. std::stringstream
을 사용하려면 <sstream>
을 포함해야합니다.
이 코드는 알 수없는 문자의 결과를 올렸습니다. –
이 코드는 작동하지만 방금 테스트했습니다. '''''''''''''''''''''''''''''과''Slashes ''의 수를 정확히 가지고 있는지 확인하고 정확한 컴파일러 오류를주지 마십시오. – Mat
정말 고마워요. –
을 사용하면 stringstream
클래스를 사용할 수 있습니다.
@Mat에 동의하지만이 특정 목적을 위해 Qt의 QString 메서드를 사용하는 것이 좋습니다.
오류의 원인은 무엇입니까? 그리고 어떤 오류 메시지가 나타 납니까? –
음 ... 문제가 뭐니? 그 컴파일하지? 오류 메시지를 게시하십시오. – Naveen
거기에 난 –