The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"OpenNews: Что нового ожидается в стандарте C++ 09"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей (Public)
Изначальное сообщение [Проследить за развитием треда]

"OpenNews: Что нового ожидается в стандарте C++ 09"  
Сообщение от opennews on 21-Ноя-06, 11:33 
В документе "C++09: A Glimpse into the Future (http://www.devsource.com/article2/0,1895,2061094,00.asp)" рассказывается о новшествах, представленных в проекте стандарта C++ 09, принятие которого ожидается в 2009  году.


URL: http://www.devsource.com/article2/0,1895,2061094,00.asp
Новость: https://www.opennet.ru/opennews/art.shtml?num=8929

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Что нового ожидается в стандарте C++ 09"  
Сообщение от Azzzazelo on 21-Ноя-06, 11:33 
Так и не понял смысл rvalue reference. На первый взгляд просто лишняя фича.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Что нового ожидается в стандарте C++ 09"  
Сообщение от Aleksey (??) on 21-Ноя-06, 11:39 
сообщение
invalid initialization of non-const reference of type 'int&' from a temporary of type 'int'
in passing argument 1 of `void foo(int&)'

на код
void foo (int& oof) { }
int main (int argn, char** argv) { foo (0); }

что нибудь говорит ?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Что нового ожидается в стандарте C++ 09"  
Сообщение от kpot email on 21-Ноя-06, 12:31 
Конечно говорит. Ты передаёшь в foo ноль, константой. А судя по сигнатуре foo, ты должен передать именно переменную. Например:

void foo(int& oof) {}
int main(...) { int v = 0; foo(v); }

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Что нового ожидается в стандарте C++ 09"  
Сообщение от Andrey Mitrofanov on 21-Ноя-06, 12:55 
> А судя по сигнатуре
О!
> foo, ты должен передать именно переменную.
Так вот, 0 - это lvalue, а v - rvalue.
Кто бы мог подумать?! :)) См., например, http://en.wikibooks.org/wiki/C++_Programming/Operators
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Что нового ожидается в стандарте C++ 09"  
Сообщение от Kemm on 21-Ноя-06, 15:45 
Польза-то какая от этого? Если я написал int &, значит надо так. Я и поизменять могу захотеть внутри функции, к примеру. Что будет?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "Что нового ожидается в стандарте C++ 09"  
Сообщение от trantor (??) on 27-Ноя-06, 18:53 
segmentation fault например как я понимаю. Передача ссылки на константу, которая может не находиться в writable памяти.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Что нового ожидается в стандарте C++ 09"  
Сообщение от AMDmi3 on 21-Ноя-06, 20:58 
> Так вот, 0 - это lvalue, а v - rvalue.
Наоборот.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Что нового ожидается в стандарте C++ 09"  
Сообщение от JetSnaiL email(ok) on 22-Ноя-06, 14:59 
Здорово! Хорошие изменения. Еще бы разрешить template method specialization внутри классов и template friends, было бы совсем хорошо!
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Что нового ожидается в стандарте C++ 09"  
Сообщение от Nem on 23-Ноя-06, 11:39 
>Здорово! Хорошие изменения. Еще бы разрешить template method specialization внутри классов и
>template friends, было бы совсем хорошо!

Точно. Этого сильно не хватает. Чтобы сделать частичную специализацию только одного метода класса, приходится частично специализировать весь класс. Т.е. полностью копировать все его описание, что приводит к полной ж.пе при сопровождении.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Что нового ожидается в стандарте C++ 09"  
Сообщение от kyrie email on 23-Ноя-06, 22:12 
>>Здорово! Хорошие изменения. Еще бы разрешить template method specialization внутри классов и
>>template friends, было бы совсем хорошо!
>
>Точно. Этого сильно не хватает. Чтобы сделать частичную специализацию только одного метода
>класса, приходится частично специализировать весь класс. Т.е. полностью копировать все его
>описание, что приводит к полной ж.пе при сопровождении.

Именно! А если еще разрешить локальным классам выступать хотя бы как параметры шаблонов не локальных классов... Т.е. например:
template <class T> void myMethod()
{
struct MyStruct : public T{};
std::vector<MyStruct> vec;
...
}

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2021 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру