Проблемы с файлом заголовка Directx

Привет, я пытаюсь использовать отладчик графики Visual Studio 2013 и попытался создать группу событий. Но я столкнулся с проблемой при включении файла заголовка d3d11_1.h. Я скопировал заголовок в свой подключаемый каталог в подключаемый файл SDK за июнь 2010 года. Но выскакивает следующая ошибка.

1> c: \ program files (x86) \ microsoft directx sdk (июнь 2010) \ include \ dxgi1_2.h (1271): ошибка C4430: отсутствует спецификатор типа - предполагается int. Примечание. C ++ не поддерживает default-int

1> c: \ program files (x86) \ microsoft directx sdk (июнь 2010) \ include \ dxgi1_2.h (1271): ошибка C2143: синтаксическая ошибка: отсутствует ',' перед '*'

1> c: \ program files (x86) \ microsoft directx sdk (июнь 2010) \ include \ dxgi1_2.h (1275): ошибка C2061: синтаксическая ошибка: идентификатор 'DXGI_RGBA'

Я также скопировал dxgi1_2.h в каталог include. Что вызывает эту проблему? Это проблема конфликта? Может ли кто-нибудь указать мне, как создать эту группу событий?


person Soulslayer    schedule 06.03.2014    source источник
comment
У меня есть 3 гипотезы: (1) вы забыли #include <windows.h>; (2) вы где-то забыли защиту заголовка (например, #pragma once); (3) вы делаете что-то не так с include. Покажите нам соответствующий код.   -  person Ivan Aksamentov - Drop    schedule 06.03.2014


Ответы (1)


Ошибка была связана с порядком заголовков, вы поместили заголовки DirectX перед заголовками окон, поэтому некоторые типы, определенные в windows.h, не были видны, когда компилятор обрабатывает заголовки directx.

Вы должны включить windows.h перед заголовками direct3d.

#include <windows.h>
#include <d3d11_1.h>
...
person zdd    schedule 07.03.2014