crossplatform.ru

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

> QStringRef - есть такой класс
Гость_Гость_*
сообщение 29.7.2009, 10:54
Сообщение #1





Гости








    


    QString a="122",b="123";
    
    if(a!=b)
        a="aaaa";
    if(&a!=b)
        a="bbb";

это компилируется. Зовет QStringRef
Оператор & в нелпе по QString не вижу. Описан явная функция QStringRef . Видимо (QString*)&s даст указатель.

ЗЫ А QStringRef с подсчетом ссылок? Чет пробелы в доках :unsure:
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
kwisp
  опции профиля:
сообщение 29.7.2009, 11:58
Сообщение #2


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

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




Репутация:   23  


я всё же за указатель.
QString a="122", b="123";
    if(a != b ) qDebug()<<"a !=b ";
    QString* s = &a;
    if(s != b ) qDebug()<<"&a !=b ";
    qDebug()<<s;

компилится и ошибок не вызывает.
-----------------------------------------------


    
QString a="123", b="123";
    QString* s = &a;
    if(s == b ) qDebug()<<"s == b ";
    qDebug()<<s;

тут дело в
operator!= ( const QString & )
и проч.
для указателя на строку они тоже определены и так как они вызываются слева на право т.е. слева вызывающий объект а справа ссылка то получается
все равно что
if(s == b ) что if(s->operator==( b ) )
я думаю так.

Сообщение отредактировал kwisp - 29.7.2009, 12:07
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


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


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




RSS Текстовая версия Сейчас: 12.12.2024, 4:18