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

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

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

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

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

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

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

Вопрос 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)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.08.2011, 14:39
Ответы с готовыми решениями:

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

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

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

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

24
fasked
22.08.2011, 17:58     Пример задания с сайта Яндекса =)
  #21

Не по теме:

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

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

Добавлено через 3 минуты
И, если придираться, то конструкторы без explicit объявлены.
Какой вы придирчивый молодой человек
0
Эксперт С++
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,880
23.08.2011, 13:08 23
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
14 / 14 / 1
Регистрация: 05.07.2010
Сообщений: 88
23.08.2011, 13:16 24
Объясните, кто разбирается.
Не стоит ли занести в класах копировальные конструкторы в private, что бы ограничить юзера от них?
В противном случае компилятор наградит нас своим копированием, и копироватся будет не информация указателя, а сам указатель и в случае
C++
1
2
Foo f = new Foo(2);
Foo f2 (f);
вызовется два деструктора, которые попытаются удалить один и тот же указатель.

Am I right or am I right?
0
Делаю внезапно и красиво
Эксперт С++
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
23.08.2011, 13:27 25
Цитата Сообщение от Mee Посмотреть сообщение
Не стоит ли занести в класах копировальные конструкторы в private, что бы ограничить юзера от них?
Скорее, нужно реализовать конструктор копирования.
1
23.08.2011, 13:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.08.2011, 13:27
Помогаю со студенческими работами здесь

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru