1. 首页
  2. 编程语言
  3. C++ 
  4. 使用ROS进行机器人编程-第二版

使用ROS进行机器人编程-第二版

上传者: 2024-07-23 23:12:01上传 PDF文件 14.32MB 热度 9次

有时,我们可能想建立自己的操纵算子,这是相当简单的。一个像endl这样的不带参数的操纵算子只是一个函数,这个函数把一个ostream引用作为它的参数。(引用是一种不同的参数传送方式,在第10章中讨论)对endl的声明是:ostream& endl(ostream&)。现在,当我们写:cout<<"howdy"<,endl产生函数的地址。这样,编译器问:“有能被我调用的把函数的地址作为它的参数的函数吗?”确实有一个这样的函数,是在IOSTREAM.H里预先定义的函数;它被称作“应用算子”。这个应用算子调用这个函数,把ostream对象作为一个参数传送给这个函数。不必知道应用算子怎样建立我们自己的操纵算子;我们只要知道应用算子存在就行了。

下面是建立一个操纵算子的例子,这个操纵算子叫nl,它产生一个换行而不刷新这个流:


#include 

using namespace std;



ostream& nl(ostream& os) {

    return os.put('\n');

}

是不是很简单?如果你想了解更多关于C++流操纵算子的内容,可以查阅C流操纵算子doc,或者参考这篇详解iostream,它们会对你大有帮助。C++Iostream的实例中有更多实用的例子。

你知道吗? endl不仅能换行,还能刷新输出流,巧妙运用这一点,可以大大提高你的编程效率!而如果你对iostream和iostream.h的区别感到困惑,这篇文章将为你揭开谜底。

想象一下,每次写代码时,操纵算子就像一位勤奋的小助手,默默地处理各种流操作。学习并掌握这些技巧,你的编程之路将会变得更加顺畅!

下载地址
用户评论