Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Консультации по C/C++

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> Консультации по C/C++
Имя
Сообщение << Старые топики   Новые топики >>
Консультации по C/C++ - 2012-03-08 00:42:36.923333   
brotan

Сообщений: 25
Оценки: 0
Присоединился: 2012-02-20 17:18:21.943333
612759646 мой ICQ
Post #: 1
RE: Консультации по C/C++ - 2012-03-08 01:43:06.560000   
class0071

Сообщений: 300
Оценки: 0
Присоединился: 2011-01-27 17:15:23.750000
Вопрос 1.
Какие из следующих стандартных контейнеров позволяют найти в них элемент (по его значению) за O(ln(n))?:)
std::vector std::list std::deque std::set std::multiset std::hash_set сортированный std::vector сортированный std::list сортированный std::deque сортированный std::set сортированный std::multiset сортированный std::hash_set
Вопрос 2.
В Visual Studio 2010 пишет, что IntelliSense недоступен в C++/CLR, как быть?:)
Post #: 2
RE: Консультации по C/C++ - 2012-03-08 14:06:18.676666   
brotan

Сообщений: 25
Оценки: 0
Присоединился: 2012-02-20 17:18:21.943333
Я больше склоняюсь к std::set и std::multiset т.к они включают в себя - сортированные ассоциативные контейнеры или множества.
СО ВТОРЫМ ВОПРОСОМ извините помочь не смогу (
Post #: 3
RE: Консультации по C/C++ - 2012-03-09 15:39:13.726666   
class0071

Сообщений: 300
Оценки: 0
Присоединился: 2011-01-27 17:15:23.750000
За ответ на первый вопрос спасибо; на второй - есть Visual Assist X.
Post #: 4
RE: Консультации по C/C++ - 2012-03-09 15:47:48.370000   
brotan

Сообщений: 25
Оценки: 0
Присоединился: 2012-02-20 17:18:21.943333
К сожалению с addin к среде MS Visual C++ не работал . ( Извините.
Post #: 5
RE: Консультации по C/C++ - 2012-03-09 17:19:03.143333   
class0071

Сообщений: 300
Оценки: 0
Присоединился: 2011-01-27 17:15:23.750000
Как устранить проблемы в коде, не изменяя функцию main?
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; }
Post #: 6
RE: Консультации по C/C++ - 2012-03-10 22:53:18.793333   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Подсказка: прежде, чем устранять проблемы их нужно выявить. И начать нужно с минимального описания того, что должен делать этот класс.
Post #: 7
RE: Консультации по C/C++ - 2012-03-10 23:40:53.760000   
brotan

Сообщений: 25
Оценки: 0
Присоединился: 2012-02-20 17:18:21.943333
для начала класс Foo что он делает:
1) Как я понял с помошью конструктора Foo создается некий динамический массив из скрытого элемента j(кол - во элементов)
2) C помошью ~Foo ,с помошью деструктора удаляем динамический массив (а как иначе память та системная выделяется).
class Bar - на сколько я понял наследует у Foo (что - то ,может метод ) и проделывает тоже самое

Вопрос немного в другом и я не могу понять void main() {…} что делает?
Создает 2 дин.массива типа Foo and Bar?
Post #: 8
RE: Консультации по C/C++ - 2012-03-11 17:50:01.496666   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Это очень печально…
Post #: 9
RE: Консультации по C/C++ - 2012-03-11 22:21:33.940000   
brotan

Сообщений: 25
Оценки: 0
Присоединился: 2012-02-20 17:18:21.943333
_SAZ_ если знаете ответ не томите , помогите человеку)
Post #: 10
RE: Консультации по C/C++ - 2012-03-12 11:47:42.066666   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Может мне ещё и на работу за человека ходить? :)
Post #: 11
RE: Консультации по C/C++ - 2012-03-12 15:37:02.636666   
brotan

Сообщений: 25
Оценки: 0
Присоединился: 2012-02-20 17:18:21.943333
_SAZ_ не хотите помогать - набивайте посты в другом месте окда?
Post #: 12
RE: Консультации по C/C++ - 2012-03-12 18:19:59.100000   
Genco

Сообщений: 1662
Оценки: 90
Присоединился: 2007-12-16 23:11:22.003333
Ну там, где человек этот вопрос взял, и посложнее задачки были, помнится, менее стандартные…

А остальное и правда, печально, против правды не попрешь))
Post #: 13
RE: Консультации по C/C++ - 2012-03-13 01:43:18.103333   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333

quote:

ORIGINAL: brotan

_SAZ_ не хотите помогать - набивайте посты в другом месте окда?

Я достаточно помогаю людям (читайте историю моих сообщений) и знаю, зачем он задал этот вопрос (и где его взял). В набивании постов никакого смысла не вижу. Так что если вы что-то знаете про бонусы за количество постов - расскажите, мне очень интересно.
Post #: 14
RE: Консультации по C/C++ - 2012-03-13 13:25:14.303333   
brotan

Сообщений: 25
Оценки: 0
Присоединился: 2012-02-20 17:18:21.943333
_SAZ_ , если вам одиноко и не с кем поговорить стучите в ICQ я поговорю с вами , а тему будьте добры не забивайте нашими спорами я Вас прошу:)
Post #: 15
RE: Консультации по C/C++ - 2012-03-13 18:03:36.050000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Я лишь жду ответа на свои вопросы. Если вы хотите с кем-то лично пообщаться - найдите другие способы коммуникации. А тут - общественный форум. И давайте без оффтопика.
Post #: 16
RE: Консультации по C/C++ - 2012-03-18 23:29:51.510000   
lamber

Сообщений: 5
Оценки: 0
Присоединился: 2012-03-18 23:07:19.530000
Почему данный код не работает?

operator int() const {
return *this;
}
Post #: 17
RE: Консультации по C/C++ - 2012-03-19 01:53:44.003333   
Genco

Сообщений: 1662
Оценки: 90
Присоединился: 2007-12-16 23:11:22.003333
Потому что у тебя оператор приведения к целому возвращает неведомый указатель. Спрашивай впредь в прикрепленном топике, пожалуйста.
Post #: 18
RE: Консультации по C/C++ - 2012-03-19 03:21:03.600000   
lamber

Сообщений: 5
Оценки: 0
Присоединился: 2012-03-18 23:07:19.530000
Прикрепленный топик не заметил, извиняюсь. Решил что данный вопрос можно отнести к теме "консультации по c++".

Дело в том, что код компилируется, но при выполнении - stack overflow. Причины этого мне как раз и интересны
Post #: 19
RE: Консультации по C/C++ - 2012-03-19 10:37:30.786666   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Очень мало кода, ничего нельзя сказать.
Post #: 20
RE: Консультации по C/C++ - 2012-03-20 12:38:35.516666   
lamber

Сообщений: 5
Оценки: 0
Присоединился: 2012-03-18 23:07:19.530000
struct A { operator int() { return *this; } }; int main() { A p; int n = int(p); return 0; }
Код отлично компилируется. При запуске - переполнение стека.
??!
Post #: 21
RE: Консультации по C/C++ - 2012-03-20 15:21:40.630000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
И что твой код должен делать?
Post #: 22
RE: Консультации по C/C++ - 2012-03-20 17:57:02.406666   
Genco

Сообщений: 1662
Оценки: 90
Присоединился: 2007-12-16 23:11:22.003333
Сказал же - или не приводи указатель на структуру к целому (вообще что за бред), или поясни, зачем вообще ты это делаешь, особенно не классе, в структуре. оО
Post #: 23
RE: Консультации по C/C++ - 2012-03-20 19:17:21.050000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Во-первых, в с++ структура и класс - это одно и тоже. Во-вторых, он приводит не указатель к целому, а саму структуру. У этой структуры нет полей - и, имхо, из-за этого и возникают какие-то косяки, хотя я не уверен.
Post #: 24
RE: Консультации по C/C++ - 2012-03-20 21:13:35.156666   
lamber

Сообщений: 5
Оценки: 0
Присоединился: 2012-03-18 23:07:19.530000
Кажется, разобрался. Вопрос снят.

Код я приводил для примера и максимально упрощенный. Ничего осмысленного он делать не должен был.
Если структуру поменять на класс и добавить туда поля - ничего не изменится.

Думаю, что происходит следующее:
this разыменовывается - получается просто структура, затем она должна быть приведена к инту (т.к. int() возвращает очевидно int).
Для её приведения опять вызывается int() и т.д. От этого и возникает рекурсия.
Post #: 25
RE: Консультации по C/C++ - 2012-03-21 00:48:59.643333   
Genco

Сообщений: 1662
Оценки: 90
Присоединился: 2007-12-16 23:11:22.003333
Во-во. Молодец, успехов.

quote:

Во-вторых, он приводит не указатель к целому, а саму структуру.

И? Не важно, что приводить (хотя всё же this это именно что указатель на текущий экземпляр чего-то. Можно обозвать ссылкой, здесь не существенно), приведение-то в реализации как таковое не выполнялось.
Post #: 26
RE: Консультации по C/C++ - 2012-03-21 00:52:11.416666   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Там чётко написано return *this;

ТС, молодец, что разобрался.
Post #: 27
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> Консультации по C/C++







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.