cout.setf(ios::hex, ios::basef...
发布网友
发布时间:2024-02-19 16:29
我来回答
共1个回答
热心网友
时间:2024-03-15 01:29
把setf想象成一个广义的赋值函数
举个例子,有个学生类,有学号,姓名等属性。现在学生类并不单独提供“设置学号”,“设置姓名”等函数,而是提供一个单独的函数“设置值”,然后需要你把设置的属性作为参数填进去,就像这样:
student.set(123, "id");
student.set("abc", "name");
这里的set函数的第二个参数就相当于cout.setf的第二个参数,告诉cout第一个参数是用来设置什么的。
在这个例子中,ios::basefield 表示进制,然后传ios::hex进去,告诉cout要用16进制打印
你也可以写:cout.setf(ios_base::fixed,ios_base::floatfield) 来设置浮点数的格式