Вопросы с тегом «pointers»

Указатель - это тип данных, значение которого относится непосредственно (или «указывает») к другому значению, хранящемуся в другом месте в памяти компьютера, используя его адрес.

161
Являются ли нулевые ссылки действительно плохой вещью?

Я слышал, что включение нулевых ссылок в языки программирования является «ошибкой в ​​миллиард долларов». Но почему? Конечно, они могут вызывать NullReferenceExceptions, но что с того? Любой элемент языка может быть источником ошибок при неправильном использовании. И какая альтернатива? Я полагаю,...

97
Чем ссылка Java отличается от указателя C?

В C есть указатели, а в Java есть так называемые ссылки. У них есть что-то общее в том смысле, что все они указывают на что-то. Я знаю, что указатели в C хранят адреса, на которые они указывают. Ссылка также хранит адрес? Чем они отличаются, кроме того, что указатель более гибкий и подвержен...

89
Нужно ли юным умам изучать концепции указателей?

Почему мастер Си Деннис Ричи ввел указатели в Си? И почему другие языки программирования, такие как VB.NET, Java или C #, устранили их? Я нашел несколько пунктов в Google, и я тоже хочу выслушать ваши комментарии. Почему они исключают концепции указателей в современных языках? Люди говорят, что C...

72
Какое хорошее объяснение для указателей? [закрыто]

В ваших собственных исследованиях (самостоятельно или в классе) был ли у вас момент "ах-ха", когда вы, наконец, действительно поняли указатели? У вас есть объяснение, которое вы используете для начинающих программистов, которое кажется особенно эффективным? Например, когда новички впервые...

58
Какие проблемы программирования лучше всего решать с помощью указателей? [закрыто]

Ну, я в основном понимаю, как использовать указатели, но не то, как лучше всего их использовать для лучшего программирования. Какие хорошие проекты или проблемы нужно решить, используя указатели, чтобы я мог лучше их...

45
Почему указатели не рекомендуются при кодировании на C ++?

Я где-то читал, что при использовании C ++ рекомендуется не использовать указатели. Почему указатели такие плохие идеи, когда вы используете C ++. Для программистов C, которые привыкли использовать указатели, что является лучшей альтернативой и подходом в C...

38
В C ++ почему и как виртуальные функции работают медленнее?

Может кто-нибудь подробно объяснить, как именно работает виртуальная таблица и какие указатели связаны при вызове виртуальных функций. Если они на самом деле медленнее, можете ли вы показать, что время выполнения виртуальной функции превышает обычные методы класса? Легко потерять отслеживание того,...

33
raw, weak_ptr, unique_ptr, shared_ptr и т. д. Как правильно их выбрать?

В C ++ есть много указателей, но, если честно, через 5 лет или около того в программировании на C ++ (особенно с Qt Framework) я использую только старый необработанный указатель: SomeKindOfObject *someKindOfObject = new SomeKindOfObject(); Я знаю, что есть много других «умных» указателей: // shared...

32
Потребуются ли приложениям реального мира 128-битное плоское адресное пространство?

Это немного "одного мегабайта должно хватить на всех", но ... 64-разрядное плоское адресное пространство позволяет в 4,3 миллиарда раз больше пространства, чем 32-разрядное адресное пространство. Это 17 179 869 184 ГиБ. Очевидно, что переход от 8 бит к 16 битам был довольно быстрым (я смотрю на...

30
Какого типа данные хранятся в языке Си?

Я знаю, что указатели содержат адреса. Я знаю, что типы указателей «общеизвестны» на основе «типа» данных, на которые они указывают. Но указатели по-прежнему являются переменными, и адреса, которые они содержат, должны иметь тип данных. Согласно моей информации, адреса в шестнадцатеричном формате....

30
int * i; или int * i; или int * i; [закрыто]

В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и,...

29
Разве использование переменных-указателей не накладные расходы памяти?

В таких языках, как C и C ++, при использовании указателей на переменные нам требуется еще одно место в памяти для хранения этого адреса. Так разве это не накладные расходы памяти? Как это компенсируется? Используются ли указатели в приложениях с нехваткой памяти, критичных ко...

25
Зачем увеличивать указатели?

Я только недавно начал изучать C ++, и, как и большинство людей (согласно тому, что я читал), я борюсь с указателями. Не в традиционном смысле, я понимаю, что это такое, и почему они используются, и как они могут быть полезны, однако я не могу понять, насколько полезны инкрементные указатели, может...

25
Почему v в C означает не void?

В строго типизированных языках, таких как Java и C #, void(или Void) тип возвращаемого значения для метода, по-видимому, означает: Этот метод ничего не возвращает. Ничего такого. Без возврата. Вы не получите ничего от этого метода. Что действительно странно, так это то, что в C voidкак тип...

23
Возможна ли память всех возможных перестановок килобайтного блока и указателей?

Это достаточно сложная идея, чтобы обернуть мою голову, и я был бы очень признателен за любые изменения / помощь, чтобы сделать его более читаемым для тех, кто в курсе. Возможно ли теоретически иметь жесткий диск, на котором сохранена одна копия каждой возможной двоичной перестановки в один...

20
Что такого сложного в указателях / рекурсии? [закрыто]

Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 5 лет назад . В опасностях java-школ Джоэл рассказывает о своем...

19
Есть ли реальное использование указателей в C #? [закрыто]

Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 5 лет назад . Какова ситуация при кодировании в C #, где...

18
Когда и почему указатели стали рассматриваться как рискованные?

Похоже, что мышление об использовании указателей в языках программирования постепенно изменилось, поэтому стало общепринятым, что указатели считаются рискованными (если не явным «злом» или подобным повышением). Каковы были исторические события для этого изменения мышления? Были ли какие-то...