📅  最后修改于: 2023-12-03 15:39:41.995000             🧑  作者: Mango
在 C++ 中,要打印类型(Type)非常简单,只需要用一个流提取运算符 <<
。下面将介绍如何打印常用的数据类型。
打印整型(Integer)是最常见的操作之一。只需要用 std::cout
将变量作为参数,并在其前面添加左移运算符 <<
即可。
#include <iostream>
int main()
{
int i = 42;
std::cout << i << std::endl; // 输出:42
return 0;
}
打印浮点型(Float)同样简单。只需要用 std::cout
将变量作为参数,并在其前面添加左移运算符 <<
即可。
#include <iostream>
int main()
{
float f = 3.14;
std::cout << f << std::endl; // 输出:3.14
return 0;
}
打印布尔型(Boolean)是非常简单的。只需要用 std::cout
将变量作为参数,并在其前面添加左移运算符 <<
即可。
#include <iostream>
int main()
{
bool b = true;
std::cout << std::boolalpha << b << std::endl; // 输出:true
return 0;
}
在上面的例子中,我们也可以使用 std::noboolalpha
以输出 1
或 0
代替 true
或 false
。
打印字符型(Character)同样简单。只需要用 std::cout
将变量作为参数,并在其前面添加左移运算符 <<
即可。
#include <iostream>
int main()
{
char c = 'A';
std::cout << c << std::endl; // 输出:A
return 0;
}
打印字符串型(String)同样简单。只需要用 std::cout
将变量作为参数,并在其前面添加左移运算符 <<
即可。
#include <iostream>
#include <string>
int main()
{
std::string s = "Hello, World!";
std::cout << s << std::endl; // 输出:Hello, World!
return 0;
}
打印指针类型(Pointer)需要注意指针的数据类型。只需要用 std::cout
将指针变量作为参数,并在其前面添加左移运算符 <<
即可。
#include <iostream>
int main()
{
int i = 42;
int *pi = &i;
std::cout << pi << std::endl; // 输出:0x7ffee75538f4
return 0;
}
打印自定义类型(Custom Type)需要重载 <<
运算符。让我们从头开始定义一个简单的自定义类型。
#include <iostream>
class Student
{
public:
Student(const char *name, int age) : name(name), age(age) {}
friend std::ostream &operator<<(std::ostream &os, const Student &student)
{
os << "Name: " << student.name << ", Age: " << student.age;
return os;
}
private:
const char *name;
int age;
};
int main()
{
Student s("Mike", 21);
std::cout << s << std::endl; // 输出:Name: Mike, Age: 21
return 0;
}
在上述示例中,我们的 <<
运算符函数被声明为友元(Friend),以便可以访问 Student
类的私有成员。在该函数中,我们使用 os
流对象将对象的属性写入流中,并返回流对象本身。
以上是打印类型 C++ 的介绍。