2017-12-30 40 views
0

最近、私はGLEWを使用してOpenGLを学習しています。このために、私はVisual StudioコミュニティIDEを使用しています。何らかの理由で、ビジュアルスタジオのインテリセンスが完全な関数シグネチャを表示しない場合、glewで定義された関数の上にカーソルを置くと、完全な関数定義の代わりにglew.hで定義されたマクロのみが表示されます。例えばGLEW - Visual Studio Intellisenseが完全な関数を表示していないSign

、iはglVertexAttribPointer(カーソルを合わせた場合)、それは示しています
の#define glVertexAttribPointer GLEW_GET_FUN(_glewVertexAttribPointer)
を。 完全な関数の署名を表示するにはどうすればよいですか?前もってありがとうございます

答えて

0

これはマクロ名だけであり、関数自体ではないので、関数名の上にホバリングすると正常に表示されません。それはIDEことは驚くべきことではありません間接の多くのレベルで

typedef void(__stdcall *PFNGLVERTEXATTRIBPOINTERPROC)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer) 

:__glewVertexAttribPointerは別のマクロの後ろに隠れtypedefのように定義されてPFNGLVERTEXATTRIBPOINTERPROC、の定義である

#define glVertexAttribPointer GLEW_GET_FUN(__glewVertexAttribPointer) 

:たとえばglVertexAttribPointerは次のように定義されますこれをちょうど普通の関数として扱い、あなたに署名を与えるのに苦労します。しかし、少なくとも私のVisual Studio 2017コミュニティでは、glVertexAttribPointerを入力するだけで十分です。そしてすぐにブラケットを開くと、関数の署名が表示されます。また、引数を区切るときにカンマを入力すると表示されます。これは、すぐに私はブラケットを開くと、私のVisual Studioで次のようになります。

enter image description here

それは、すべての引数の本当に便利なリストを思い付く、あなたが現在入力している大胆な引数を作ります。希望が役立ちます。

+0

はい、私はYouTubeでビデオを見ていて、その人がVisual Studioのバージョンを使用していただけで、その人が機能上を席巻したときに完全な機能解読を表示しました。私は完全な解読を与えるためにintellisenseを得るために変えることができるいくつかの設定である。とにかく助けてくれてありがとう。 –

+0

@Nikhil Bansal方法があるかどうか知りたい。あなたが見たビデオへのリンクがありますか? – Zebrafish

+0

残念ながらNo !!しかし、上記の提案は役に立ちました。実際には、関数のパラメータリストの中にカーソルを置いてCtrl + Shift +スペースを押すと、上のような同じリストが得られることが分かりました。 –

関連する問題