3
누출 : 이QString 년대는
QVector< QPair<qint32, QString> > vector(10000000);
QString temp;
for (int i = 0; i < 10000000; ++i)
{
temp = QString::fromUtf8("Vasya");
vector.replace(i, qMakePair(i, temp));
}
내 프로그램이 RAM 470 메가 바이트 사용하며,이 때
QVector< QPair<qint32, QString> > vector(10000000);
QString temp2 = "Vasya";
for (int i = 0; i < 10000000; ++i)
{
vector.replace(i, qMakePair(i, temp2));
}
만 90메가바이트입니다 RAM의?
Dewfy가 대답했지만 Qt의 암시 적 공유 (QString은 암시 적으로 공유 된 클래스 임)에 대한 추가 정보 - http : // qt-project에 관심이 있습니다. org/doc/qt-5.0/qtcore/implicit-sharing.html – Linville