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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Указатели и ссылки 
:(
    Опции темы
drug007
Дата 15.9.2015, 11:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

Репутация: нет
Всего: 1



Всем здравствуйте.
Не уверен, что не флуд, но задам вопрос. Наткнулся случайно на объявление о приеме на работу программиста С++ "для разработки критически важного компонента системы" с уверенным знанием С++ и контрольным вопросом - чем указатель отличается от ссылки. В коллективе возникло два мнения - 1) что это базовое требование для программиста С++ знать эти вещи и 2)что на самом деле в этом вопросе есть множество подводных камней и все не так просто, поэтому такой вопрос разработчику критически важного компонента уместен. Вот у меня вопрос - действительно ли есть эти самые подводные камни, что только опытные разработчики критически важных компонентов и владеют ими или все-таки это просто показывает уровень разработки в отдельно взятой организации?
PM MAIL   Вверх
xvr
Дата 15.9.2015, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 60
Всего: 223



Цитата(drug007 @  15.9.2015,  11:37 Найти цитируемый пост)
все-таки это просто показывает уровень разработки в отдельно взятой организации?

Именно это.

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


Бывалый
*


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

Репутация: нет
Всего: 1



xvr, спасибо! Ваше мнение значит для меня)) А то я уже начал думать, что упустил что-то важное.
PM MAIL   Вверх
jsharp36
Дата 16.9.2015, 08:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

Репутация: нет
Всего: 1



А где контрольный вопрос? В описании вакансии? Это было бы странно.

А вообще может быть несколько вариантов.
1. Глупый текст вакансии могут составлять hr, ничего в этом не понимающие.
2. Если это первые тесты, то они делаются не для определения уровня знаний, а для отсеивания неадекватов. Хороших программистов мало, зато на вакансию откликнется немалое число странных людей. И вот чтобы только допустить до собеседования, желательно их как-то фильтровать.

Но вполне может быть и слабый уровень разработки, если все таки раньше неадекваты прорвали линию обороны и устроились там работать, а нормальных нет )

Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL   Вверх
tzirechnoy
Дата 16.9.2015, 19:58 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 2
Всего: 16



Цитата
Вот у меня вопрос - действительно ли есть эти самые подводные камни


Конечно, есть! Как будто в C++ есть хоть какой-нибудь момент, в котором не было бы подводных камней.
PM MAIL   Вверх
drug007
Дата 18.9.2015, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

Репутация: нет
Всего: 1



Цитата(jsharp36 @  16.9.2015,  08:17 Найти цитируемый пост)
А где контрольный вопрос? В описании вакансии? Это было бы странно.

В том-то и дело, что прямо в вакансии. Как если бы это был критически важный момент.
Цитата(tzirechnoy @  16.9.2015,  19:58 Найти цитируемый пост)
Конечно, есть! Как будто в C++ есть хоть какой-нибудь момент, в котором не было бы подводных камней. 

Это я согласен. На 200%. Почему и спросил на форуме. Но в чем подводный камень заключается? При этом из вакансии складывается впечатление, что для того, чтобы избежать этих подводных камней достаточно знать чем ссылка отличается от указателя. Тут либо действительно вопрос с большой заковыркой, либо, простите, глупый вопрос. И если первое, то хотелось бы знать этот подвох.
PM MAIL   Вверх
feodorv
Дата 18.9.2015, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 11
Всего: 45



Есть тонкости. Хотя бы.


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
_zorn_
Дата 18.9.2015, 12:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 1
Всего: 12



Чему равно  smile 
i = i++ + ++i;

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


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 11
Всего: 45



_zorn_, во-первых, не так, а так:
Код
i = i+++++i;
А во-вторых, здесь нет ссылок, нет указателей, нет их отличия друг от друга smile 


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
_zorn_
Дата 19.9.2015, 03:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 1
Всего: 12



Цитата(feodorv @  19.9.2015,  02:56 Найти цитируемый пост)
а так:

А зачем ? Все равно undefined behavior )
А ваш код даже не скомпилируется.

Цитата(feodorv @  19.9.2015,  02:56 Найти цитируемый пост)
А во-вторых, здесь нет ссылок, нет указателей

Это было больше к подводным камням и т.п. 

Это сообщение отредактировал(а) _zorn_ - 19.9.2015, 03:32
PM MAIL   Вверх
feodorv
Дата 19.9.2015, 06:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 11
Всего: 45



Цитата(_zorn_ @  19.9.2015,  03:27 Найти цитируемый пост)
Это было больше к подводным камням и т.п. 
Нет уж, Вы давайте по теме - указатели и ссылки, а про "1000 и 1 способ прострелить себе ногу" и так известно.


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
_zorn_
Дата 19.9.2015, 06:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 1
Всего: 12



Цитата(feodorv @  19.9.2015,  13:29 Найти цитируемый пост)
 и так известно.

Но ведь вы дали не компилируемый код и не сказали в чем подвох в моём  smile 
Так что не надо тут  smile 

Ну если все так серьёзно - чем "ссылка" отличается от указателя в физическом плане ?
Неужели "ссылка" не ссылается на адрес памяти ? Или может быть указатель, если его назвать ссылкой примет другое значение ?

Зачем воду в ступе толочь ? Вот и хотел развлечь  smile 

ЗЫ. Это просто конструкции языка. Физически они ни чем не отличаются.

Это сообщение отредактировал(а) _zorn_ - 19.9.2015, 06:59
PM MAIL   Вверх
_zorn_
Дата 19.9.2015, 07:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 1
Всего: 12



Попытка "разобраться" в
Цитата(feodorv @  19.9.2015,  13:29 Найти цитируемый пост)
Нет уж, Вы давайте по теме - указатели и ссылки

как раз и ведет к
Цитата(feodorv @  19.9.2015,  13:29 Найти цитируемый пост)
"1000 и 1 способ прострелить себе ногу"

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


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 11
Всего: 45



Цитата(_zorn_ @  19.9.2015,  06:41 Найти цитируемый пост)
Но ведь вы дали не компилируемый код и не сказали в чем подвох в моём

Я вот помню этот прикол со времен K&R компиляторов именно в таком виде, с пятью идущими подряд плюсиками без пробелов, выглядит устрашающе. Что я могу сказать, печально, что не компилируется. 


Цитата(_zorn_ @  19.9.2015,  06:41 Найти цитируемый пост)
Зачем воду в ступе толочь ?

Потому что тонкости всё же есть.


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
_zorn_
Дата 19.9.2015, 07:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 1
Всего: 12



Не надо мудрить.
Чем проще ваш код читается тем лучше. Не надо шифроваться от читателей (я раньше таким был smile). 
А работадатели сами не знают чего хотят часто. 
Где то тут на винграде была тема с неадекватной вакансией )
Там в тексте были даже такие технологии о которых я не слышал (или они умерли). Ну а знание http, nginx, apache меня всегда убивало )))
Они даже не вкурсе что httpd и apache это одно и тоже  smile

Добавлено @ 07:08
Цитата(feodorv @  19.9.2015,  14:05 Найти цитируемый пост)
Я вот помню

Зачем нам стариковские воспоминания ? )
Ты ведь так и не сказал, что с ним не так )))

Добавлено @ 07:11
Цитата(feodorv @  19.9.2015,  14:05 Найти цитируемый пост)
Потому что тонкости всё же есть. 

Тонкости ДЛЯ использования библиотек и т.п.
Чем он мне и не нравится. Скорей всего об этил ТОНКОСТЯХ разработчики БИБЛИОТЕК даже и не думали.
Вот такой вот он undefined behavior  smile 
Странно что вы не заметили в моем примере прямую отсылку...


ЗЫ. А изначально это выглядело так ++i + ++i Даже статья на лурке есть  smile 

Это сообщение отредактировал(а) _zorn_ - 19.9.2015, 07:17
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

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

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

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

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


 




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


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

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