crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Код не работает
ruzik
  опции профиля:
сообщение 1.6.2011, 9:42
Сообщение #1


Активный участник
***

Группа: Участник
Сообщений: 254
Регистрация: 23.2.2011
Из: Саратов
Пользователь №: 2436

Спасибо сказали: 2 раз(а)




Репутация:   0  


Здравствуйте, не подскажите почему код не работает:
    bool isClass = false;
    for(int a=0;a<=needNext.count();a++)
    {
        if (QString(needNext[a])!=QString(" "))
            if (QString(needNext[a])==QString("}"))
            {
                qDebug() <<"1"+ QString(needNext[a]);
                isClass=true;
                a=needNext.count();
            }
            else
            {
                a=needNext.count();
                qDebug() <<"2"+ QString(needNext[a]);
            }
    }

Он должен находить последний символ в тексте не равный пробелу и если этот символ "}" то сделать действие, но почему-то он не хочет находить последним символом } , и всегда выводит в отладку "2 причем без последней ковычки, что может быть не так
В качестве текста подается текст типа
QPushButton{
background-color: #123123;    
}


Сообщение отредактировал ruzik - 1.6.2011, 9:55
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
silver47
  опции профиля:
сообщение 1.6.2011, 12:00
Сообщение #2


Активный участник
***

Группа: Участник
Сообщений: 356
Регистрация: 1.4.2010
Пользователь №: 1584

Спасибо сказали: 40 раз(а)




Репутация:   6  


Текст как храниться?
Зачем перебирать все элементы текста, если нужен только последний?
needNext - это QString?

UPD:
qDebug() << nextText.at(nextText.size() - 1); // вполне покажет последний символ текста(текст не должен быть пустым)
// применительно же к вашему случаю:
if(nextText.at(nextText.size() - 1) == '}'){
    qDebug() << "Class";
}


Сообщение отредактировал silver47 - 1.6.2011, 12:17
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ruzik
  опции профиля:
сообщение 1.6.2011, 18:32
Сообщение #3


Активный участник
***

Группа: Участник
Сообщений: 254
Регистрация: 23.2.2011
Из: Саратов
Пользователь №: 2436

Спасибо сказали: 2 раз(а)




Репутация:   0  


Всем спасибо за помощь, решил проблему сам
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 1.6.2011, 18:59
Сообщение #4


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(ruzik @ 1.6.2011, 21:32) *
решил проблему сам
в чём она заключалась?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ruzik
  опции профиля:
сообщение 1.6.2011, 20:53
Сообщение #5


Активный участник
***

Группа: Участник
Сообщений: 254
Регистрация: 23.2.2011
Из: Саратов
Пользователь №: 2436

Спасибо сказали: 2 раз(а)




Репутация:   0  


В наличии симолов типа \n и тд, на которые реагировал алгоритм, я его полностью изменил и теперь все работает нормально и намного быстрее
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 3.1.2025, 10:55