Почему Microsoft использует соглашение об именах «g_» со своими переменными конвейера DirectX10?

Большая часть примеров кода из Microsoft DirectX SDK включает переменные, которые используют префикс g_ для переменных Windows API, а также переменные конвейера DirectX, такие как swapchain.

Вот несколько примеров:

D3D10_DRIVER_TYPE           g_driverType;
ID3D10Device*               g_pd3dDevice;
IDXGISwapChain*             g_pSwapChain;
ID3D10RenderTargetView*     g_pRenderTargetView;
ID3D10Effect*               g_pEffect;
ID3D10EffectTechnique*      g_pTechnique;
ID3D10InputLayout*          g_pVertexLayout;
ID3D10Buffer*               g_pVertexBuffer;
ID3D10Buffer*               g_pIndexBuffer;
ID3D10EffectMatrixVariable* g_pWorldVariable;
ID3D10EffectMatrixVariable* g_pViewVariable;
ID3D10EffectMatrixVariable* g_pProjectionVariable;
D3DXMATRIX                  g_World;
D3DXMATRIX                  g_View;
D3DXMATRIX                  g_Projection;

Какова причина этого? Я не понимаю, что означает g_ , и почему бы вам не использовать более удобные имена, такие как «SwapChain». Может ли кто-нибудь объяснить?

6
задан BoltClock 31 March 2011 в 06:25
поделиться