嘿,我最近开始使用vs代码,我遇到了一个非常奇怪的问题。我的代码不会自动完成的地方。我已经安装了c / c ++扩展,并且“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 / include”我刚做了一个非常简单的测试我写了1行
“VkInstance实例;” 它编译并运行良好,但每当我开始键入VkInstance它永远不会出现自动完成。奇怪的是一些东西自动完成,其他东西不会例如“vkCreateInstance”出现,因为我正在键入它。也许我错过了什么或者做错了什么就想要一些反馈
谢谢!
#include <vulkan/vulkan.h>
int main()
{
VkInstance instance;
return 0;
}
答案 0 :(得分:1)
这似乎是VSCode代码完成功能的限制(或错误?)。 Vulkan标头包含了宏中所有句柄(如VkInstance,VkFence等)的typdef,看起来VSCode无法处理这个问题。
E.g。这样:
VK_DEFINE_HANDLE(VkInstance)
不会自动完成,但是如果您手动更换宏来获取此功能:
typedef struct VkInstance_T * VkInstance;
自动完成功能。
如果这是一个错误(只是快速查看一下),可能值得报告https://github.com/Microsoft/vscode-cpptools/issues