2016-09-13 8 views
0

最近、私はvsコードの使用を開始しました。本当に奇妙な問題を抱えています。私のコードは自動完成しません。私はC/C++拡張機能をインストールし、containning「c_cpp_properties.json」ファイルを持っている以下のコードを自動補完できません

{ 
    "configurations": [ 
     { 
      "name": "Mac", 
      "includePath": ["/usr/include"] 
     }, 
     { 
      "name": "Linux", 
      "includePath": ["/usr/include"] 
     }, 
     { 
      "name": "Win32", 
      "includePath": ["c:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/include"] 
     } 
    ] 
} 

あなたは、私が正しいコピーしたパスが含まれている尋ねる前に「は/ usr /含める」私は本当に簡単なテストをしました私は1行を書きました

"VkInstanceインスタンス;" コンパイルして正常に動作しましたが、VkInstanceと入力すると自動的に完了します。さらに、奇妙なことに、いくつかのものが自動でうまくいっていて、他のものは "vkCreateInstance"のように表示されません。おそらく私は何かを見逃しているか、何か間違ったことをするとフィードバックが欲しいです。

ありがとう!

#include <vulkan/vulkan.h> 

int main() 
{ 
    VkInstance instance; 

    return 0; 
} 

答えて

1

これは、VSCodeのコード補完機能の制限(またはバグ)のようです。 Vulkanヘッダーは、マクロ内のすべてのハンドル(VkInstance、VkFenceなど)のtypdefsをラップし、VSCodeがこれを処理できないように見えます。

など。この:

VK_DEFINE_HANDLE(VkInstance)

がオートコンプリートませんが、あなたがこれを取得するために手でマクロを置き換える場合:

typedefは構造体VkInstance_T * VkInstanceを。

オートコンプリートが動作します。

バグの場合(これを簡単に見てください)、https://github.com/Microsoft/vscode-cpptools/issues

に報告する価値があります
関連する問題