我下载了id3lib并将目录放置在我的main.cpp目录中,但是g ++和visual studio都给出了找不到文件/目录和“未定义”错误
这是我的main.cpp:
return
g ++ main.cpp给出:
catch
如果我使用“”而不是<>,则会出现此错误:
let a, b;
try {
([a, b] = await Promise.all([hash,token]));
} catch(e) {
return res.status(400).json({status:false,msg:"error in promise"});
}
答案 0 :(得分:0)
仅将其放在主文件旁边还不够。如您在第一种方法中看到的那样,将#include
与<>
一起使用时,找不到它,这是因为(从here复制):
对于
#include <filename>
,预处理器在实现中进行搜索 依赖方式,通常在由 编译器/ IDE。此方法通常用于包括标准库 头文件。
您没有告诉编译器在哪里寻找id3lib-3.8.3/include/id3/tag.h
,所以<>
对您不起作用。
然后您尝试了""
。它找到了id3lib-3.8.3/include/id3/tag.h
,但是在tag.h
中有#include <id3/id3lib_frame.h>
,所以回到第一种方法的问题吧?
您需要做的就是告诉编译器/ IDE在哪里寻找这些文件。在Visual Studio中,在项目文件上单击鼠标右键,然后单击“属性”->“ C / C ++”->“常规”->“其他包含目录”,然后向其中添加包含库($(ProjectDir)id3lib-3.8.3/include/
或$(SolutionDir)id3lib-3.8.3/include/
)。那么您的第一种方法应该可以正常工作。