c++ - 打印一个由字符串和整数组成的数组,而不使用 cpp 文件中的函数
问题描述
我在 .cpp 文件中有此代码,并且不允许编辑此文件中的代码。
#ifndef CP_MEMBER_H
#define CP_MEMBER_H
#include <iostream>
#include <string>
class CP_Member
{
public:
string m_name;
int m_age;
public:
CP_Member() {
m_name = "?";
m_age = 0;
}
CP_Member(string name, int age) : m_name(name), m_age(age) {}
friend ostream& operator<< (ostream& os, const CP_Member& a);
};
ostream& operator<< (ostream& os, const CP_Member& a) {
os << "Name:" << a.m_name << " Age: " << a.m_age;
return os;
}
#endif
#pragma once
我只在我的 .h 文件中写了这些。
解决方案
由于main
文件已经在做
cout << newCommers[i] << endl;
你只需要确保它做你想做的事。由于newCommers[i]
is a CP_Member
,您可以控制它的所有内容,包括使用operator<<
它时会发生什么。如何控制这应该在你的讲义中,你可以研究“重载运算符<<”的问题。
推荐阅读
- swift - 如何在 Swift 中实现 CountedSet (NSCountedSet)?
- php - 解析期间的 Http 失败 - 有角度的 http 帖子到 php
- numpy - TFRecord 读取和内存使用情况
- flutter - 如何在 Flutter 中理想地在同一个项目下创建多个应用程序?
- arrays - Lua - 从字符串数组生成随机哈希 id
- spring-boot - repeatWhenEmpty 运算符在 RSocket websocket 请求的上下文中不起作用,但在 HTTP 调用中起作用
- regex - Apache 重写动态子文件夹
- bash - df 命令在终端中有效,但在 bash 脚本中无效
- python - 如何在字符串列表中的括号之间连接字符串
- reactjs - 使用功能组件渲染后响应访问状态