C++ 类中的辅助函数
本文介绍如何在 C++ 类中实现辅助函数。
类中的 C++ 辅助函数
辅助函数是一种不由最终用户实例化的函数,但提供在另一个类内部使用的有用功能。 如果该函数不是该类的成员而是其他类的成员,则 C++ 程序将创建一个辅助函数来打印或将数据用于其他目的。
辅助函数通常由类的编写者提供,不需要直接访问类的表示。 让我们尝试用 C++ 实现辅助函数的示例。
#include <iostream>
#include <vector>
template <typename Delftstack>
void print(const std::vector <Delftstack>& DemoVec) {
typename std::vector <Delftstack>::const_iterator x;
for (x = DemoVec.begin(); x != DemoVec.end(); x++)
std::cout << *x << " ";
std::cout << std::endl;
}
int main() {
std::vector <int> vector1, vector2;
vector1.assign(7, 3);
vector2.assign(7, 6);
std::cout << "Vector 1 : ";
print(vector1);
std::cout << "Vector 2 : ";
print(vector2);
if (vector1 == vector2)
std::cout << "vector 1 and Vector 2 are lexicographically equal!"
<< std::endl;
else
std::cout << "vector 1 and vector 2 are lexicographically not equal!"
<< std::endl;
if (vector1 > vector2)
std::cout << "vector 1 is lexicographically greater than vector 2!"
<< std::endl;
else
std::cout << "vector 2 is lexicographically greater than vector 1!"
<< std::endl;
}
上面的代码使用类中的辅助函数来比较两个向量。 当两个向量不相等时,此代码的输出如下。
Vector 1 : 3 3 3 3 3 3 3
Vector 2 : 6 6 6 6 6 6 6
vector 1 and vector 2 are lexicographically not equal !
vector 2 is lexicographically greater than vector 1 !
当向量相等时,这意味着我们将向量的值:
vector1.assign(7, 3);
vector2.assign(7, 6);
更改为:
vector1.assign(7, 3);
vector2.assign(7, 3);
在这种情况下,输出将是:
Vector 1 : 3 3 3 3 3 3 3
Vector 2 : 3 3 3 3 3 3 3
vector 1 and Vector 2 are lexicographically equal!
vector 2 is lexicographically greater than vector 1!
我们可以忽略最后一行,因为它来自 else 条件; 它是为不等式场景设置的。 例如,如果值为:
vector1.assign(7, 6);
vector2.assign(7, 3);
这些值的输出将是:
Vector 1 : 6 6 6 6 6 6 6
Vector 2 : 3 3 3 3 3 3 3
vector 1 and vector 2 are lexicographically not equal!
vector 1 is lexicographically greater than vector 2!
相关文章
Arduino 复位
发布时间:2024/03/13 浏览次数:315 分类:C++
-
可以通过使用复位按钮,Softwarereset 库和 Adafruit SleepyDog 库来复位 Arduino。
Arduino 的字符转换为整型
发布时间:2024/03/13 浏览次数:181 分类:C++
-
可以使用简单的方法 toInt()函数和 Serial.parseInt()函数将 char 转换为 int。
Arduino 串口打印多个变量
发布时间:2024/03/13 浏览次数:381 分类:C++
-
可以使用 Serial.print()和 Serial.println()函数在串口监视器上显示变量值。