Re[2]: type qualifier on return type is meaningless
От: Аноним  
Дата: 01.02.07 08:22
Оценка:
Здравствуйте, Андрей Тарасевич, Вы писали:

АТ>Здравствуйте, Аноним, Вы писали:


А>>
А>>  class SomeClass {
А>>    Msg * const createMessage() const; 
А>>  };
А>>


А>>icc выругался, что "const" бесполезен здесь,

А>>почему?

АТ>Хмм... А почему и как он может быть полезен? Эта функция возвращает rvalue типа 'Msg*'. Квалификатор 'const' не имеет смысла применять к rvalue не-класс типов. Rvalue не-класс типов и так не являются изменяемыми. Поэтому хоть прилепляй к ним 'const' хоть не прилепляй — разницы никакой не будет.


После ответа(спасибо), я понял что хотел спросить,
цель не дать модифицировать адресс:

    int a;
    int * const p = &a;
        ++p;//<-ошибка компиляции

Почему такое можно
        int a;
    int * const p = &a;
        int *v = p;//<- не ошибка
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.