接受c++中的ID号和名称参数
takes parameters for the ID number and name in c++
您的DeptstoreMember类应该有以下公共方法:
- 一个接受ID号和名称参数的构造函数。如果显示的身份证号是大于0,应接受;否则ID号应该设置为-1
- ID、名和姓的getter和setter。
- 一个名为FullName()的函数,它返回一个由姓氏、逗号和空格组成的字符串,然后是名字。
一个名字为"Mark",姓氏为"Kevin"的DeptstoreMember返回" Kevin, Mark " 一个叫做ReadData()的方法。它接受通过引用传递的istream作为唯一参数。它按照这个顺序读入一个整数(ID号)和姓和名。然后它读取一个整数N,其中N的范围从0到10,作为已经存储的价格的数目,后面跟着N个双精度数。所有项都用空白分隔。如果所有数据读取成功,该方法返回 - 一个名为DiscountedPrice()的方法,接受双精度体作为参数。它存储原始(未折扣)价格,并返回降价5%的价值和奖励现金。
- 你的类应该使用双精度数组来存储价格信息。
- 根据需要添加其他私有数据或方法
true
,否则返回false
。让我们一次满足一个需求。
您的DeptstoreMember类
class DeptstoreMember
{
};
接受ID号和名称参数的构造函数。出示的身份证号大于0的,接受;否则,ID号应设置为-1。
class DeptstoreMember
{
public:
DeptstoreMember(int id, const std::string& name)
: m_id(id), m_name(name)
{
if (m_id <= 0) m_id = -1;
}
private:
int m_id;
std::string m_name;
};
ID、名和姓的getter和setter。
class DeptstoreMember
{
public:
DeptstoreMember(int id, const std::string& name)
: m_id(id), m_name(name)
{
if (m_id <= 0) m_id = -1;
}
int get_id() const
{
return m_id;
}
int get_name() const
{
return m_name;
}
void set_id(int id)
{
if (id <= 0)
m_id = -1;
else
m_id = id;
}
void set_name(const std::string& new_name)
{
m_name = new_name;
}
private:
int m_id;
std::string m_name;
};
接下来,您应该尝试一次实现一个需求。
我建议创建一个main
程序并编译它。
接下来,添加上述代码并使其编译。接下来,实现另一个需求,让它编译。
您可能希望在添加新需求之前对文件进行复制。这将为您提供一个快照,以便在出现任何新问题时返回。
编辑1:main()
函数
我通常喜欢从控制台应用程序的小模板开始:
#include <iostream>
#include <cstdlib>
using std::cout;
using std::cin;
int main(void)
{
cout << "Paused. Press Enter to continue.n";
cin.ignore(1000000, 'n');
return EXIT_SUCCESS;
}
我让上面的main
函数工作,然后添加一小段代码并对它们进行测试。如果我创建一个新类,并且它在main
中工作,我将分解到单独的头文件和源文件中,然后重建。
重复此过程,直到满足所有需求。
相关文章:
- 如何反转整数参数包
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- 如何使用默认参数等选择模板专业化
- 模板参数替换失败,并且未完成隐式转换
- 具有默认模板参数的多态类的模板推导失败
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 函数调用中参数的顺序重要吗
- 部分定义/别名模板模板参数
- 模板-模板参数推导:三个不同的编译器三种不同的行为
- 使用不带参数的函数访问结构元素
- 基于另一个成员参数将函数调用从类传递给它的一个成员
- 如何在OMNET++中指定与命令行参数组合的输出文件名
- 如何使用Luacneneneba API正确读取字符串和表参数
- 在派生函数中指定void*参数
- 视图中的参数推导失败:take_while
- static_assert在宏中,但也可以扩展到可以用作函数参数的东西
- 使用指向成员的指针将成员函数作为参数传递
- 没有名称的C++模板参数
- 如何将enable-if与模板参数和参数包一起使用