powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Несколько вопросов по с++
17 сообщений из 42, страница 2 из 2
Несколько вопросов по с++
    #39061056
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorych
Код: plaintext
1.
( int )( &rect.height )


расстрелять через повешение!
указатель не обязан в int умещаться
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061071
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилegorych
Код: plaintext
1.
( int )( &rect.height )

расстрелять через повешение!ага, а потом ещё линейкой по рукам
мы же сейчас исследуем, всё же, а не промышленный код пишем ))
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061151
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stutПотому что int* указатель на тип int -- я про указатели не писал.
Я непосредственно отнимал числа -- в дпном случае -- 12-8
Какой тип по твоему имеет &rect.width?
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061156
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorychмы же сейчас исследуем, всё же, а не промышленный код пишем ))

offsetof в обоих случаях лучше подойдёт
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061285
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилegorychмы же сейчас исследуем, всё же, а не промышленный код пишем )) offsetof в обоих случаях лучше подойдётвот теперь и расскажи ТСу, что это за зверь такой ;)
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061707
stut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если поменять & на * то компилятор выдаст ошибку. То есть амперсанд это не такой уж и указатель. С другой стороны я ведь отнимаю два числа. Если отнять 12-8 в любых единицах измерения что у вас получится? Почему тогда 12 и 8 не делить на 4? Также интересно все таки как там получить адрес функции. В интернете нашей что надо привести лиш название функции без скобок но результат тот же с этой ошибкой.
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061742
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorychstutПотому что int* указатель на тип int -- я про указатели не писал.
Я непосредственно отнимал числа -- в дпном случае -- 12-8это ты так думаешь, а компилятор думает по другому. Он то указатели вычитал :))
Код: plaintext
1.
cout << "d:" << ( int )( &rect.height ) - ( int )( &rect.width ) << endl;

так попробуй.
Интересно, к чему был такой совет? Окончательно новичка запутать бессмысленным кодом?

stut , создавайте по каждому вопросу отдельный топик (тему). Так вам же будет проще.
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061746
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, насколько я знаю, операция вычитания адресов даёт заведомо корректный результат только в случае, если эти адреса указывают на объекты (или выстроенные типы, не суть) размещенные в *одном* массиве. Так что зря вы вычитаете указатели на поля структуры (struct, class).

Конечно, мы понимаем, что если вычитаем указатели на byte, то это всегда корректно, поскольку вся память — один массив байтов.
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061829
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stutЕсли поменять & на * то компилятор выдаст ошибку. То есть амперсанд это не такой уж и указатель.
почитай теорию, разберись с указателями. Без этих знаний нельзя на С/С++ что-либо написать.
У тебя как в анекдоте:
Опыт 1: посадили таракана на стол, хлопнули в ладоши, таракан убежал
Опыт 2: оторвали таракану ноги, посадили таракана на стол, хлопнули в ладоши, таракан не убежал
Вывод: таракан без ног не слышит
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061850
stut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы пожалуста не перекруч. имена. Уберите тот бред что написали. Был когда то студентом, вот тогда и теорию изучал может уже хватит.
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061852
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги. К спокойствию! Если хотите написать гадость - подождите
30 минут и потом решайте стоит писать или нет.
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39061853
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petravесли вычитаем указатели на byte, то это всегда корректно, поскольку вся память — один массив байтов.
я бы не был так категоричен - x86 - с сегментной адресацией, например
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39062151
stut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так как там адрес функции высчитать правильно? Тоже хочется увидеть на практике сколько места занимает. Да и вопрос о методе мейн остается открытым. И отвечу наверное на шуточный вопрос о "каждой теме для каждого вопроса" -- мне этого не надо я лиш выбрал 5-6 вопросов из полусотни: о корневом неймспейсе ответа например нету.
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39062159
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stutТак как там адрес функции высчитать правильно?
что означает "высчитать"?
stutТоже хочется увидеть на практике сколько места занимает.
в машинном коде?
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39062162
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, вопрос о размере адреса метода класса тоже нетривиальный, насколько я знаю. В случае множественного наследования, виртуального наследования и прочих наворотов — размер указателя может быть больше четырёх байт на 32-х битной платформе. Я когда-то изучал эту тему, но сейчас всё забыл.
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39062166
wst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Взглянул таки на вопросы, однако переформулировать надо. В исходном виде ни на один нет однозначного ответа, кроме разве определения полиморфизма.
...
Рейтинг: 0 / 0
Несколько вопросов по с++
    #39063652
Фотография Irmaro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivIrmaroв универе изучала плюсы, но хочу наверстать забытое.

0) создавай для нового вопроса новый топик.
1) вопрос уже неоднократно обсуждался, поищи.
3) Про доступность в наших книжных не скажу. Не отслеживаю.
Для чайников -- скажу. Надо читать литературу НЕ для чайников, потому что читать
плохую литературу бесмысленно -- зря потратишь время.

Из литературы по С++ я рекомендую всегда книгу Дейтел + Дейтел, чем позже издание -- тем лучше (их было штук 5).
В озоне есть, значит, должна быть доступна (там чёрная, у них все обложки разные :-) ).

"Язык программирования C++. Лекции и упражнения" Стивен Прата -- я уверен, что тоже хорошая книга,
но сам её не читал ещё (или уже).

Есть ещё учебник Павловской, я её тоже не читал, но она хорошая -- Павловская, не книжка.
Я у неё учился. :-) Достоинства этой книги -- что это ВУЗ-овский учебник, малый объём, и меньше цена.
Но, наверное, покрытие материала там поменьше.

Но Дейтелы тоже ВУЗ-овский учебник, только не российский. Авторы -- отец и сын, отец -- практикующий профессор в университете,
а сын -- практикующий программист. Вместе получилась хорошая комманда для книги.

Но Дейтелы также (думаю) не охватывают весь язык, особенно последний стандарт. Последний стандарт неплохо освящён в книге
Параллельное программирование на С++ в действии. Практика разработки многопоточных программ Энтони Уильямс (если я не перепутал книгу).

Большое спасибо! А то наш препод вечно Страуструпа советовала и кроме него - ничего. Огромное спасибо.)
...
Рейтинг: 0 / 0
17 сообщений из 42, страница 2 из 2
Форумы / C++ [игнор отключен] [закрыт для гостей] / Несколько вопросов по с++
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]