c++构造函数中char的默认值
Default value for char in a constructor in C++
考虑以下c++类的构造函数:它给了我错误:
请给我一些建议。如果我能将char类型形参的默认实参类型为const char [2]
correctAnswer
的默认构造函数设置为""
(无),我会很高兴。
#include <string>
#include <iostream>
class Question{
int id;
std::string text;
char correctAnswer;
public:
Question(int id=0, const std::string& text="", char correctAnswer="a") : // here is the error
id(id),text(text),correctAnswer(correctAnswer) {
}
}
改为
Question(int id=0, const std::string& text="",char correctAnswer='a')
'a'
是一个单字符。
双引号总是创建数组。
"Hello"是一个大小为6的数组。
"a"是一个大小为2的数组。
额外的1用于空终止符(0或' ')
Question(int id=0, const std::string& text="",
char correctAnswer='a')
// ^^ Use single Quote for a char
id(id),text(text),correctAnswer(correctAnswer)
{
}
相关文章:
- 如何创建一个CMake变量,除非显式重写,否则使用默认值
- 具有默认值的引用获取函数
- 当给定默认值时,为什么此模板参数推导失败
- 从具有默认值的部分指定模板类继承时发生SWIG错误,具有不带默认值的正向声明
- 格式化浮点值:返回默认值
- 如何将数组部分初始化为某个默认值?
- asn1c 不会从 asn.1 模块中提取八位字节字符串的默认值
- 创建一个包含 c++ 默认值的环境文件
- C++(和 ROS) - 包含与前向声明引用,设置默认值和类型定义
- Makefile g++ 使用命令行中的 -D 变量进行编译,默认值
- Switch 语句(字符串)一直选择默认值,除非其为零
- 如何使用默认值将枚举声明为 extern
- 如何在提升程序选项中设置矢量<矢量>的默认值<string>
- 如何使用默认值为构造函数中的枚举赋值?
- 变量始终在函数中重置为默认值
- 如何在C++中提供模板化函数作为另一个函数的参数,默认值?
- char指针或char变量的默认值是多少
- 如何使用cont char启动字符串_View的默认值
- 使用类 c++ 中的构造函数为 char 数组提供默认值
- c++构造函数中char的默认值