当我在我的control.hpp中包括main.cpp时:
#include <uhd/transport/usb_control.hpp>
/* Some other includes */
int main (void)
{
uhd::transport::usb_control::sptr usbSpeed;
usbSpeed = uhd::transport::usb_control::make(handle, 0);
/* `handle` is a `usb_device_handle::vid_pid_pair_t` */
}我从这里那里得到了错误
static sptr make(usb_device_handle::sptr handle, const int interface);错误:
意外的令牌结构。你忘了“;”
struct:缺少标签名
另一个奇怪的错误是:
usbSpeed = uhd::transport::usb_control::make(handle, 0);错误:
无法将参数2从int转换为const int
我为uhd::transport::usb_control::make找到的唯一实现是impl.cpp,它只抛出一个异常。
环境信息: 编译器: MS Visual Studio 2017 操作系统: MS Windows 10 C++标准: 17
如何纠正这些错误?我只知道要检测USRP usb类型。为此,我阅读了uhd源代码,并找到了uhd/transport/usb_Contro.hpp,但我遇到了这些错误。
发布于 2020-01-27 11:32:42
可能这种意外行为的原因与您包含的文件和其中一些文件之间的冲突有关,正如您在#include <uhd/transport/usb_control.hpp>中提到的,您还有其他一些包含。我建议移动这包括线,包括上和下的其他包含,并再次测试你的代码。
希望我的建议有用。
https://stackoverflow.com/questions/59929272
复制相似问题