Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Указатели на неименованные перечисления, где-нибудь использует или для "красоты" 
V
    Опции темы
newbee
Дата 4.3.2012, 22:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бревно
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 24.8.2011

Репутация: 4
Всего: 19



Цитата(boostcoder @  4.3.2012,  23:02 Найти цитируемый пост)
я же показал как разрулить его. 

Код

template<typename T>
struct X{};

X<int> foo(std::string const&);

X<auto> x=foo("Alice Cooper - Hey stupid");


Приведи аналог с decl.

Я сейчас прочитала топик и совсем потеряла веру в бустика. Скажи, зачем хамить и поясничать перед человеком (корвин), который тебе забесплатно объясняет твою неправоту? И минусить в данном случае нужно совсем не его!


--------------------
You're face to face
With man who sold the world
PM   Вверх
boostcoder
Дата 4.3.2012, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(newbee @  4.3.2012,  22:10 Найти цитируемый пост)
X<auto> x=foo("Alice Cooper - Hey stupid");

хе!
осталось понять, корректен ли этот код..

Цитата(newbee @  4.3.2012,  22:10 Найти цитируемый пост)
потеряла веру в бустика

ньюбка, возможно ты считаешь свою веру эталоном?

Цитата(newbee @  4.3.2012,  22:10 Найти цитируемый пост)
тебе забесплатно объясняет твою неправоту?

чтоб это назвать неправотой, нужно доказать другую правоту. а этого сделано не было. даже mes  не смог.

PM WWW   Вверх
mes
Дата 4.3.2012, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(boostcoder @  4.3.2012,  21:17 Найти цитируемый пост)
а этого сделано не было.

пример с A запустите ))  те механизмы, которые вручную придется добавить по дедукции типа и есть отличие auto от decla  smile

Добавлено через 1 минуту и 1 секунду
Цитата(boostcoder @  4.3.2012,  21:17 Найти цитируемый пост)
осталось понять, корректен ли этот код..

по сути да )



--------------------
PM MAIL WWW   Вверх
boostcoder
Дата 4.3.2012, 22:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(mes @  4.3.2012,  22:23 Найти цитируемый пост)
пример с A запустите

http://liveworkspace.org/code/c800847632af...cc2efeabb2c6519

Цитата(mes @  4.3.2012,  22:23 Найти цитируемый пост)
те механизмы, которые вручную придется добавить по дедукции типа и есть отличие auto от decla

так а я две страницы что утверждаю?!
 smile

Добавлено через 5 минут и 4 секунды
сто процентное отличие auto от decltype, проявляется только в примере ньюби.
PM WWW   Вверх
mes
Дата 4.3.2012, 23:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(boostcoder @  4.3.2012,  21:30 Найти цитируемый пост)
http://liveworkspace.org/code/c800847632af...cc2efeabb2c6519

хмм.. это вы уже хакнули, упустив функцию... 
вы запустите с использование decltype (f(5)) 
smile
тогда и получите вывод типа.. 



--------------------
PM MAIL WWW   Вверх
boostcoder
Дата 4.3.2012, 23:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(mes @  4.3.2012,  23:02 Найти цитируемый пост)
вы запустите с использование decltype (f(5))

я об этом и говорил, говоря что "auto i = expr;" разворачивается в "decltype(expr) i = expr;", и дополнял, "это decltype с немного иной семантикой"

испорченный телефон получился.
PM WWW   Вверх
newbee
Дата 4.3.2012, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бревно
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 24.8.2011

Репутация: 4
Всего: 19



Арррррррггггггггххххххххх бустик, ты этот пример видел? Семантика, семантика, семантика, даже в лиспосрачах столько раз бездумно про семантику не тяфкнут.

Цитата

    auto a = v[0];        // a has type int
    decltype(v[0]) b = 1; // b has type const int&, the return type of
                        // std::vector<int>::operator[](size_type) const



--------------------
You're face to face
With man who sold the world
PM   Вверх
boostcoder
Дата 4.3.2012, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



читай выше.
PM WWW   Вверх
mes
Дата 4.3.2012, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(boostcoder @  4.3.2012,  22:11 Найти цитируемый пост)
я об этом и говорил, говоря что "auto i = expr;" разворачивается в "decltype(expr) i = expr;", и дополнял, "это decltype с немного иной семантикой"

какое отношение decltype имеет к нижеследующему коду ? : 
Код

auto f(auto i, auto j)
{
   return i+j;
}



--------------------
PM MAIL WWW   Вверх
volatile
Дата 4.3.2012, 23:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2107
Регистрация: 7.1.2011

Репутация: 37
Всего: 85



Эй, господа. Вы что напали на человека?
Ну хорошо, согласен, можно придумать какой-то изворот, где синтаксически нельзя вставить decltype, а auto можно.
Ну и что?  Что это доказывает?
Разницы между ними принципиальной нет!

Тип должен быть известен и точно определен, на момент компиляции данной единицы трансляции.
И никак иначе.

PM MAIL   Вверх
mes
Дата 4.3.2012, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(volatile @  4.3.2012,  22:30 Найти цитируемый пост)
Тип должен быть известен и точно определен, на момент компиляции данной единицы трансляции.
И никак иначе.

даже в таких условиях как широк простор действий smile

Добавлено через 1 минуту и 3 секунды
Цитата(volatile @  4.3.2012,  22:30 Найти цитируемый пост)
 можно придумать какой-то изворот, где синтаксически нельзя вставить decltype, а auto можно.

дело не в извороте, а в концепции...

Добавлено через 4 минуты и 20 секунд
auto позволяет 
Цитата(volatile @  4.3.2012,  22:30 Найти цитируемый пост)
Разницы между ними принципиальной нет!

межеду выводом типом и запросом такая же разница как между специализацией и перегрузкой ))



--------------------
PM MAIL WWW   Вверх
volatile
Дата 4.3.2012, 23:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2107
Регистрация: 7.1.2011

Репутация: 37
Всего: 85



mes
Насчет утверждения бусткодера что ауто определяется через деклтайп, ничего говорить не буду.
В принципе это внутреняя кухня компилятора, и да, скорей всего это не так, но дело в принципе не в этом.

А вот с таким утверждением
Цитата(k0rvin @  4.3.2012,  14:53 Найти цитируемый пост)
auto же вычисляет тип выражения, тип которого, заранее неизвестен

Согласиться не могу.
Это чушь, причем абсолютная и полная.

PM MAIL   Вверх
mes
Дата 5.3.2012, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(volatile @  4.3.2012,  22:56 Найти цитируемый пост)
Согласиться не могу.
Это чушь, причем абсолютная и полная.

 с чем не согласны ? что тип в левой части выражения не известен ? 
если говорят "позже" это не значит что в рантайме..  в режиме компиляции есть тоже позже и раньше... smile





--------------------
PM MAIL WWW   Вверх
newbee
Дата 5.3.2012, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бревно
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 24.8.2011

Репутация: 4
Всего: 19



Цитата(volatile @  5.3.2012,  00:56 Найти цитируемый пост)
Согласиться не могу.
Потому что ты просто не можешь понять, что тебе говорят. Не ты один и не в первый раз. Все зависит от того, что считать под "заранее неизвестная". Если "оставим это до рантайма", как, я думаю, ты это понимаешь, конечно это чушь, маразм и вообще. Но это маразм понимающего, а не объясняющего.



--------------------
You're face to face
With man who sold the world
PM   Вверх
volatile
Дата 5.3.2012, 00:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2107
Регистрация: 7.1.2011

Репутация: 37
Всего: 85



Цитата(newbee @  5.3.2012,  00:05 Найти цитируемый пост)
Все зависит от того, что считать под "заранее неизвестная". 

Ну да, согласен, сначала нужно определить что понимать под термином, а потом уже спорить.
а что под этим понимаете вы?
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1511 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.