Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Странности использования qSort
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Общие вопросы
RazrFalcon
Пример из доки:
 bool caseInsensitiveLessThan(const QString &s1, const QString &s2)
{
     return s1.toLower() < s2.toLower();
}

int doSomething()
{
     QStringList list;
     list << "AlPha" << "beTA" << "gamma" << "DELTA";
     qSort(list.begin(), list.end(), caseInsensitiveLessThan);
     // list: [ "AlPha", "beTA", "DELTA", "gamma" ]
}

Если я стартую из своего класса, то:
void MainWindow::myFunc()
{
     qSort(list.begin(), list.end(), caseInsensitiveLessThan);
}

И теперь вопросы:
1) почему я не могу прописать caseInsensitiveLessThan в хедере? (с-стайл функция?)
2) почему я не могу вызывать из caseInsensitiveLessThan функции, из класса MainWindow?
BRE
Цитата(RazrFalcon @ 2.3.2012, 19:06) *
1) почему я не могу прописать caseInsensitiveLessThan в хедере? (с-стайл функция?)

Попробуй добавить inline.

Цитата(RazrFalcon @ 2.3.2012, 19:06) *
2) почему я не могу вызывать из caseInsensitiveLessThan функции, из класса MainWindow?

Потому что для вызова метода класса нужно иметь указатель на объект этого класса. Если сделаешь указатель на MainWindow доступным в теле функции caseInsensitiveLessThan, то сможешь вызывать.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.