Форум программистов, компьютерный форум 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
Эксперт C++
 Аватар для MikeSoft
3787 / 1769 / 85
Регистрация: 21.11.2009
Сообщений: 2,540
06.07.2012, 09:57     Практические задания из собеседований
ForEveR, собственно говоря, да, но меня что-то толкнуло на путь, примерно такой, как предложил Deviaphan.
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
//---------------------------------------------------------------------------
enum eItemType { itInteger, itDouble, itString };
//---------------------------------------------------------------------------
struct TDataList {
  void *pData;
  TDataList *Prev;
  TDataList *Next;
  eItemType ItemType;
};
//---------------------------------------------------------------------------
class TVarList {
  private:
    TDataList *First, *Temp, *Last;
    TDataList *GetNodeByIndex(unsigned int Index);
    bool AddData(void *Data, eItemType CurrentItemType);
    bool InsertData(unsigned int Index, void *Data, eItemType CurrentItemType);
  public:
    unsigned int Count;
    TVarList();
    ~TVarList();
 
    bool Add(int *Data);
    bool Add(double *Data);
    bool Add(std::string *Data);
    bool Add(int Data);
    bool Add(double Data);
    bool Add(std::string Data);
 
    bool Insert(unsigned int Index, int *Data);
    bool Insert(unsigned int Index, double *Data);
    bool Insert(unsigned int Index, std::string *Data);
 
    bool Insert(unsigned int Index, int Data);
    bool Insert(unsigned int Index, double Data);
    bool Insert(unsigned int Index, std::string Data);
 
    void Delete(unsigned int Index);
 
    void Get(unsigned int Index);
    void PrintAll(bool WithFormatting);
};
Думаю, код приводить не нужно, всё и без него будет ясно
 
Текущее время: 17:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru