Условие срабатывает один раз, даже если несколько знаков + в строке , В чем причина?
mainwindow.h
QLineEdit *textEdit;
QString new_Label;
mainwindow.cpp
connect(knopka15,SIGNAL(clicked()),this,SLOT (operation1()));
void MainWindow::operation1()
{
int values=0;
int d=0;
int s=0;
for ( d; d < new_Label.size(); d++)
{
if ( new_Label[d] == '+')
{
int valuex =new_Label[s].digitValue();
s=s+2;
values=values+valuex;
new_Label = QString::number(values);
}
Условие срабатывает один раз, даже если несколько знаков + в строке , В чем причина ?
Ответы (1 шт):
Автор решения: gbg
→ Ссылка
Ну, если внимательно посмотреть на код, можно увидеть, что после первого же нахождения плюсика, текст в исследуемой строке заменяется: new_Label = QString::number(values);
В такой штуке плюсиков точно нет, вот он их и не находит.