C++ 如何使用boost在不打开串行端口的情况下创建串行端口

C++ 如何使用boost在不打开串行端口的情况下创建串行端口,c++,linux,boost,serial-port,C++,Linux,Boost,Serial Port,一直在搜索谷歌等等,但我似乎找不到解决办法 boost::shared_ptr<boost::asio::serial_port> port (new boost::asio::serial_port(*ioService, "/dev/ttyS1")); boost::shared_ptr端口(新的boost::asio::serial_端口(*ioService,“/dev/ttyS1”); 这样就可以立即创建并打开端口,而这不是我想要的,我现在需要创建它,但是设置所有选项并

一直在搜索谷歌等等,但我似乎找不到解决办法

boost::shared_ptr<boost::asio::serial_port> port (new boost::asio::serial_port(*ioService, "/dev/ttyS1"));
boost::shared_ptr端口(新的boost::asio::serial_端口(*ioService,“/dev/ttyS1”);
这样就可以立即创建并打开端口,而这不是我想要的,我现在需要创建它,但是设置所有选项并在以后打开它。我该怎么做


我在手册和 Basic SyralAlxPox< /Cube中读到的似乎有一个构造器,它只使用IOSRevice创建一个端口,但是,我不知道如何去做它,并将它用于我的应用程序。

< P> C++中正确的事情之一是(资源获取是初始化),这是一件正确的事情,有很多很好的理由——所以我认为你可能不应该做你想做的事情


你能传递一个指向串行端口的
nullptr
/null智能指针,直到你真的要打开它吗?

虽然我没有将此标记为接受答案,因为它并没有真正回答我的直接问题,但我确实重写了我的应用程序代码,以便在创建端口之前获得有关端口设置的所有必需数据。因此,我创建并打开端口以及拥有它的对象,并在对象被销毁时关闭它。