Здравствуйте, Аноним, Вы писали:
А>Почему VC++ ругается на такой код?
А>А>CRITICAL_SECTION csResultGuard;
А>// ...
А>EnterCriticalSection( &csResultGuard );
А>
А>Компилятор говорит, что:
А>error C2664: 'EnterCriticalSection' : cannot convert parameter 1 from 'const CRITICAL_SECTION *' to 'LPCRITICAL_SECTION'
А>И что ему здесь не нравится???
А>Как правильно привести тип в таких случаях? static_cast не проходит, а приведение в стиле С и reinterpret_cast не поощряются.
похоже вам необходимо использовать const_cast, так как вы пытаетесь преобразовать константный объект к неконстантному (LPCRITICAL_SECTION — указатель на объект, а не указатель на костантный объект)