Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.90/39: Рейтинг темы: голосов - 39, средняя оценка - 4.90
0 / 0 / 0
Регистрация: 18.08.2011
Сообщений: 4

Пример задания с сайта Яндекса =)

22.08.2011, 14:39. Показов 8662. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе время суток всем страждущим
Просматривая объявления вакансий для программистов не мог не заметить некую шаблонность что-ли, этих самых объявлений.
В них говориться что нужен специалист, профессионал.
Владение стандартными алгоритмами, знание основных структур данных , знание ООП и умение применять его на практике и тд...
А кто он ? Этот самый профессионал ?
В моем понимании профессионал это человек закончивший профильное образование и зарабатывающий себе на жизнь им. (нууу программист пишет программы )
Так же понятно что человек все на свете знать не может, а технологии довольно быстро развиваются

В связи с чем и вопрос, кто по вашему может считаться профессионалом и какими знаниями и навыками он должен обладать обязательно чтобы таковым считаться ? (Опыт само собой конечно )
Может есть какие-нибудь блин тесты ?? Там задания какие-нибудь ? Применительно к С и С++. Ну я утрирую конечно ... но решив которые можно было бы знать что ты обладаешь обязательным минимумом ...
блин все я сдаюсь
Ну вы меня поняли я надеюсь

Второй вопрос более предметный
Это тестовое задание с сайта Яндекса

Продемонстрируйте свои знания

Вопрос 1

Перечислите все проблемы, которые вы видите в данном коде:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
class Foo
{
public:
    Foo(int j) { i=new int[j]; }
    ~Foo() { delete i; }
private:
    int* i;
};
 
class Bar: Foo
{
public:
    Bar(int j) { i=new char[j]; }
    ~Bar() { delete i; }
private:
    char* i;
};
 
 
void main()
{
    Foo* f=new Foo(100);
    Foo* b=new Bar(200);
    *f=*b;
    delete f;
    delete b;
}
вот вы какие видите ?

Благодарю за внимание, ваш Фантомайзе
Уважаемые модераторы, прошу сильно не пинать меня, если я что не так разместил О_о ... или не там О_о
Хотел экспертам кинуть но мне туда ходу нет О_о

 Комментарий модератора 
Используйте теги форматирования кода!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.08.2011, 14:39
Ответы с готовыми решениями:

Нужен пример парсинга с гугла / рамблера / яндекса
Всем пример , плиз скиньте пример вот такой вод софтины : а именно парсинг ссылок с гугла / яндекса / рамблера опр. запроса который...

Clojure Преобразования keys и values списков в словарь (задания от Яндекса для Python разработчика)
http://company.yandex.ru/job/vacancies/dev_python_main.xml (вопрос 1). За None положим nil. В качестве словаря hash-table, alist,...

Пример того, как можно быстро поднять тИЦ яндекса
Убрано модератором тема закрыта

24
22.08.2011, 17:58
Студворк — интернет-сервис помощи студентам

Не по теме:

Сыроежка, оверквотинг это нехорошо :)

1
0 / 0 / 0
Регистрация: 18.08.2011
Сообщений: 4
23.08.2011, 07:19  [ТС]
Цитата Сообщение от Deviaphan Посмотреть сообщение
Настоящий профессионал использует не менее пятидесяти смайликов на каждую тысячу слов.

Добавлено через 3 минуты
И, если придираться, то конструкторы без explicit объявлены.
Какой вы придирчивый молодой человек
0
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,894
23.08.2011, 13:08
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
class Foo
{
public:
    Foo(int j) { i=new int[j]; } // [1] конструктор позволяет непреднамеренное
                                 //     преобразование   
    ~Foo() { delete i; } // [2] нужно вызывать оператор delete[] для массивов
                         //     а не для скаляров, см. выделение памяти в
                         //     конструкторе
private:
    int* i;
 
    // [3] нужно запретить конструктор копирования и оператор копирования
    //     определив их в private части класса, чтобы предотвратить
    //     побочные эффекты сгенерированных компилятором побитовых версий
    Foo(const Foo &);
    Foo & operator= (const Foo &);
};
 
class Bar: Foo
{
public:
    Bar(int j)   // [4] то же что и [1]
        : Foo(j) // [5] т.к. коструктор по умолчанию не определен, то
                 //     необходимо явно вызывать данную версию конструктора
                 //     базового класса
    { i=new char[j]; } 
    ~Bar() { delete i; } // [6] то же что [2] см. описание в Foo
private:
    char* i;
    // [7] то же что [3] см. описание в Foo
    Bar(const Bar &);
    Bar & operator= (const Bar &);
};
 
int main() // [8] по стандарту нужно чтобы функция main() возвращала int
{
    Foo* f=new Foo(100);
    Foo* b=new Bar(200); // [9] т.к. используется private наследование, то
                         //     явное приведение тут необходимо, иначе ошибка
                         //     'Foo' is an inaccessible base of 'Bar'
 
    *f=*b;               // [10] срезка
 
    delete f;
    delete b;            // [11] т.к. деструктор Foo не объявлен как виртальный,
                         //      то имеем здесь неопределенное поведение
}
1
 Аватар для Mee
14 / 14 / 1
Регистрация: 05.07.2010
Сообщений: 88
23.08.2011, 13:16
Объясните, кто разбирается.
Не стоит ли занести в класах копировальные конструкторы в private, что бы ограничить юзера от них?
В противном случае компилятор наградит нас своим копированием, и копироватся будет не информация указателя, а сам указатель и в случае
C++
1
2
Foo f = new Foo(2);
Foo f2 (f);
вызовется два деструктора, которые попытаются удалить один и тот же указатель.

Am I right or am I right?
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
23.08.2011, 13:27
Цитата Сообщение от Mee Посмотреть сообщение
Не стоит ли занести в класах копировальные конструкторы в private, что бы ограничить юзера от них?
Скорее, нужно реализовать конструктор копирования.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.08.2011, 13:27
Помогаю со студенческими работами здесь

Пояснение задания и пример диаграммы
Я не понимаю задания, а именно что от меня хотят? Нужно создать несколько форм или в одной форме несколькой полей и по ним рассчитать...

Скиньте кто-нибудь пример тех. задания (ТЗ)
Я начинающий программер в 1С... Дали задание прихреначить готовую конфигурацию к веб-расширению от 1С... вот прифигачил, заодно поглядел на...

Нужен простой пример исходного задания на разработку
Пытаюсь устроиться на работу программистом 1с. Но никто не хочет брать без опыта работы. Говорят что нет времени учить. Хотелось бы...

Исчезновение сайта из Яндекса
Итого, жил был сайт этот после переделки вылез в топ яндекса по НЧ и СЧ. И тут пришел "бот черного понедельника" вот так...

Двиг сайта в выдаче Яндекса
Имеется недавно созданный сайт игровой тематики (www.pc-gaming.ru). Контент уникальный, вся аудитория целевая. С недавнего времени ( с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru