c++ - 我该如何解决一元论据中的错误?
问题描述
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
int main(){
const char *months[12]={"January", "February", "March", "April","May", "June", "July", "August","September", "October", "November", "December"}; // to check month is that true or false.
int day,year;
string first,last,month;
Person p(first,last,day,month,year);
ifstream infile; //opening input file
infile.open("input.txt");
while(!infile.eof()) {
}
}
}
我检查输入文件中的值并在输出文件中打印正确的值。在检查输入文件中的日期和年份是否正确后,我调用 setmonth 函数检查月份是否正确。
我该如何解决这个错误?什么是 printInfo 函数参数?
解决方案
所以第一个问题是你写
if(!p.setMonth(month))
这意味着setMonth
应该返回一个可以传递给!
. 但是如果你看setMonth
你会看到这个
void setMonth(string m){}
setMonth
是一个void
函数,它不返回任何东西,所以!p.setMonth()
是非法的。
可能它应该返回一个bool
bool setMonth(string m) { ... }
我想void printInfo(ostream){}
应该是void printInfo(ostream&){}
。这是将输出流传递给函数的正常方式。
推荐阅读
- java - SQLite 表中的硬编码数据未正确显示(数字格式问题 - 双精度)
- c++ - 霍夫线变换 - 如何闭合线以形成多边形?
- amazon-web-services - ec2 实例 url 显示文件而不是运行 App
- drools - 对属性和包含对象执行 Drools 规则的顺序
- c# - 如何遍历字典的哈希集
- java - 无法安排作业 ErpConfigContext
- r - 如果一个数据帧中的变量包含在另一个数据帧的列表变量中,则连接两个数据帧
- python - 寻找一种在python自动化测试中的for循环期间检查意外窗口的方法
- regex - 创建 Perl 正则表达式以“不匹配”特定电子邮件
- c++ - 无法将我自己的 .h 文件添加到标准库 VS 2017