Это может быть довольно просто, но у меня есть метод, который ожидает, что параметр имеет тип BYTE ** Ptr
И по разным причинам я использую int * (мы будем вызывать intPtr
дляэтот пример) в коде, который будет вызывать этот метод, поэтому мне было интересно, если это безопасно сделать:
MethodCall((BYTE**) &intPtr, ...
Метод блокирует буфер изображения на месте, и вы предоставляете ему BYTE * такчто, как только он заблокировал буфер, он устанавливает указатель на начало заблокированного буфера в памяти.Это часть кода Windows Media Foundation и поэтому не может быть легко изменена в соответствии с моим int *.
Приведет ли приведенное выше приведение в действие, чтобы мой intPtr
по-прежнему указывал на заблокированный адрес буферной памяти после вызова, как если бы это был БАЙТ * в соответствии с запросом.Кроме того, есть ли опасность сделать это?