Форум программистов, компьютерный форум CyberForum.ru

Практические задания из собеседований - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ realloc и вызов конструктора http://www.cyberforum.ru/cpp/thread300431.html
здраствуйте! мне препод сказал, что можно выделить память оператором new, а потом довыделить её с помощью realloc и каким-то образом вызвать конструкторы для новой памяти(ну или это я так его понял:D). Как это можно сделать? задание вобще такое: Во всех вариантах необходимо первоначально создать шаблон класса для работы с массивом произвольного типа данных. Шаблон должен включать: указатель,...
C++ Баг asio? или баг TCP стека? всем привет. повстречался с очень странным багом. и не могу определить кто бажит, asio, или TCP-стек. на стороне клиента, сохраняю отправляемые массивы в файл, чтоб убедится в том, что массивы не портятся. так и есть. массивы не искаженны: на стороне сервера, так же, сохраняю принятые массивы. но тут, массив приходит искаженным: http://www.cyberforum.ru/cpp/thread272413.html
C++ Получить индекс типа в mpl::map`е
всем привет. есть mpl карта типов(key -> value). нужно получить индекс типа имея только ключ. где-то накосячил. но непойму где. #include <iostream> #include <boost/mpl/distance.hpp> #include <boost/mpl/find.hpp> #include <boost/mpl/find_if.hpp>
C++ Задачи для тренировки и лучшего понимания
Ребят. Кто-нибудь может дать задачу для тренировки? Приблизительно по всему курсу С++. Буду благодарен за сложную задачу, но которую способен сделать новичок-любитель. Затраты сил-времени не важно. Главное, чтобы это было интересно и не слишком рутинно. + Если найдется человек который даст задачу просьба помогать с кодом, который я буду себя скидывать. Не переписывать за меня, но указывать на...
C++ Теория плагинов http://www.cyberforum.ru/cpp/thread123914.html
Всем привет. Для одной моей проги, нужно реализовать поддержку плагинов. Плагины предполагаются простенькие, написанные на Си. То, что плагин, это просто .so файл - понятно. То, что прога может дергать из .so файла функции - тоже понятно. 1. Непонятно то, как сам плагин сможет дергать функции из программы? 2. Программа написана на С++, но плагины предполагаю писать на Си, во избежания...
C++ ./massdown: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./massdown) всем хай! собираю свою программу на новом железе х86_64 долго не получалось скомпилить. при линковке получал вот такое сообщение: relocation R_X86_64_32 against `a local symbol' я так понял, это из-за того что часть библиотек от которых зависит цель, были собраны как 32-ух битные. но с этим вроде все нормально, пересобрал все либы - скомпилировалось. теперь при запуске получаю такое... подробнее

Показать сообщение отдельно
MikeSoft
Эксперт С++
3790 / 1772 / 85
Регистрация: 21.11.2009
Сообщений: 2,540
08.07.2012, 17:59     Практические задания из собеседований
Цитата Сообщение от Deviaphan Посмотреть сообщение
В принципе не сложно заменить свитч на мэп и вместо перечисления использовать RTTI ключ в мэпе. Функции добавления сделать шаблонными.
Шаблоны изначально запрещены.

ForEveR, не стоит забывать о том, что задание поставлено конкретно и на него отводится определённое время. И тем не менее, можно обсудить и расширяемость.
В варианте с наследованием придётся описывать новый класс, с новым типом данным.

Специально открыл исходник своего варианта и нашёл функцию Insert:
C++
1
2
3
4
5
6
bool TVarList::Insert(unsigned int Index, int Data)
{
  int *Stored = new int();
  *Stored = Data;
  return InsertData(Index, Stored, itInteger);
}
Функции AddData, InsertData исправлять не придётся, т.к. их работа от типа не зависит: void *Data, функция Add - вызов того же Insert'a с "крайним" индексом.
По-моему, если бы на собеседовании заставили добавить новый тип данных - ушла бы минута времени.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru