+ 1
Тем, что в первом случае scorePtr будет хранить указатель на значение score. Новой памяти под переменную выделено не будет. Если меняем значение по указателю scorePtr изменится также и значение score. Во втором случае происходит выделение памяти, в которую записывается 5, и только p содержит указатель на эту область памяти. Кроме как через *p нельзя будет обратиться к этому значению. И если, например *p переназначить на другую область памяти, то к значению 5 уже не получишь доступа. В отличие от этого scope останется, даже если scopePtr будет указывать куда-то ещё.
17th Dec 2017, 10:22 AM
Aleksey Borovkov
Aleksey Borovkov - avatar