Форма зависает при использовании мультикарты - PullRequest
0 голосов
/ 30 ноября 2011

Что не так с тем, что я делаю в следующем коде модуля?

Форма останавливается, когда я запускаю этот код, без вывода сообщений.

//---------------------------------------------------------------------------

#include <vcl.h>
#include <map.h>
#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btn1Click(TObject *Sender)
{
    typedef multimap<AnsiString,int> TMM;
    TMM mm1;
    mm1.insert(TMM::value_type("Vasya Vasya",1954));
    mm1.insert(TMM::value_type("Ivan Petr",1985));
    mm1.insert(TMM::value_type("Hasan Husein",1983));
    mm1.insert(TMM::value_type("Julia Mck",1982));

    AnsiString s="";
    TMM::iterator it=mm1.begin();
    while (it!=mm1.end())
    {
        s+=(*it).first+ "-"+ IntToStr((*it).second)+"\n";
    }
    ShowMessage(s);



}
//---------------------------------------------------------------------------

1 Ответ

2 голосов
/ 30 ноября 2011

Вам нужно увеличить итератор внутри цикла while

...