Visual Studio 2010,是否有某种方法可以在“包含大量<;增压/辅助水电站>;标题? 我从网上的教程中得到了一些C++的Boost代码。每个路径都以一种格式声明

Visual Studio 2010,是否有某种方法可以在“包含大量<;增压/辅助水电站>;标题? 我从网上的教程中得到了一些C++的Boost代码。每个路径都以一种格式声明,c++,boost,boost-asio,C++,Boost,Boost Asio,有没有一种方法可以让include Visual Studio添加一个前缀,让who项目允许我#包含该格式的文件 它是一个接一个的头文件,它们都引用了该格式的更多头文件 我知道QT Creator有一个#INCLUDEPATHS选项,它允许您导入一个目录,然后直接从中引用 任何帮助都将不胜感激 #include <boost\asio.hpp> using namespace boost; class SimpleSerial { public: /** * Constructo

有没有一种方法可以让include Visual Studio添加一个前缀,让who项目允许我#包含该格式的文件

它是一个接一个的头文件,它们都引用了该格式的更多头文件

我知道QT Creator有一个#INCLUDEPATHS选项,它允许您导入一个目录,然后直接从中引用

任何帮助都将不胜感激

#include <boost\asio.hpp>
using namespace boost;

class SimpleSerial
{
public:
/**
 * Constructor.
 * \param port device name, example "/dev/ttyUSB0" or "COM4"
 * \param baud_rate communication speed, example 9600 or 115200
 * \throws boost::system::system_error if cannot open the
 * serial device
 */
SimpleSerial(std::string port, unsigned int baud_rate)
: io(), serial(io,port)
{
    serial.set_option(boost::asio::serial_port_base::baud_rate(baud_rate));
}

/**
 * Write a string to the serial device.
 * \param s string to write
 * \throws boost::system::system_error on failure
 */
void writeString(std::string s)
{
    boost::asio::write(serial,boost::asio::buffer(s.c_str(),s.size()));
}

/**
 * Blocks until a line is received from the serial device.
 * Eventual '\n' or '\r\n' characters at the end of the string are removed.
 * \return a string containing the received line
 * \throws boost::system::system_error on failure
 */
std::string readLine()
{
    //Reading data char by char, code is optimized for simplicity, not speed
    using namespace boost;
    char c;
    std::string result;
    for(;;)
    {
        asio::read(serial,asio::buffer(&c,1));
        switch(c)
        {
            case '\r':
                break;
            case '\n':
                return result;
            default:
                result+=c;
        }
    }
}

private:
boost::asio::io_service io;
boost::asio::serial_port serial;
};
#包括
使用名称空间boost;
类单序列
{
公众:
/**
*构造器。
*\param端口设备名称,例如“/dev/ttyUSB0”或“COM4”
*\param波特率通信速度,例如9600或115200
*\t如果无法打开,则抛出boost::system::system\u错误
*串行设备
*/
SimpleSerial(标准::字符串端口,无符号整数波特率)
:io(),串行(io,端口)
{
serial.set_选项(boost::asio::serial_port_base::baud_rate(波特率));
}
/**
*将字符串写入串行设备。
*\param要写入的字符串
*\t失败时抛出boost::system::system\u错误
*/
void writeString(标准::字符串s)
{
boost::asio::write(串行,boost::asio::buffer(s.c_str(),s.size());
}
/**
*阻塞,直到从串行设备接收到线路。
*字符串末尾的最终'\n'或'\r\n'字符将被删除。
*\返回包含接收行的字符串
*\t失败时抛出boost::system::system\u错误
*/
std::string readLine()
{
//逐字符读取数据时,代码为简单而不是速度而优化
使用名称空间boost;
字符c;
std::字符串结果;
对于(;;)
{
asio::读取(串行,asio::缓冲区(&c,1));
开关(c)
{
案例'\r':
打破
案例“\n”:
返回结果;
违约:
结果+=c;
}
}
}
私人:
boost::asio::io_服务io;
boost::asio::串行口串行;
};

单击菜单栏中的“项目”,然后选择“属性…”。然后使用菜单树转到“配置属性”/“C/C++”/“常规”,并将目录添加到“其他包含目录”中。

您能告诉我们您遇到了哪些错误吗。我不明白“不识别”对您意味着什么。嗨,Daramarak,本质上Visual Studio不识别这些文件,因为它们的包含路径以及我没有添加任何前缀或导入它们的包含目录。使用C:\in#include非常糟糕。谁会做这样的事?只是删除它,忘记你曾经见过它。Visual Studio识别它,但我不想使用它,但我不知道如何引用数百个类型标题-这是我的问题,我实际上刚刚做了,现在它可以工作了-无论如何,谢谢!