编译器要求我在默认函数参数的等号前添加空格
Compiler requires me to add space before equal sign for default function parameter
如果我写:
void compute(char*, char*=0) { // no space before =
}
int main()
{
compute(0);
}
main.cpp:1:25: error: expected ')'
void compute(char*, char*=0) {
^
main.cpp:1:13: note: to match this '('
void compute(char*, char*=0) {
^
main.cpp:6:5: error: no matching function for call to 'compute'
compute(0);
^~~~~~~
main.cpp:1:6: note: candidate function not viable: requires 2 arguments, but 1 was provided
void compute(char*, char*=0) {
^
2 errors generated.
如果我在=
: char* =0
前加空格,那就没问题了。
这是另一个最令人烦恼的解析问题吗?
正如@Bo Persson所说,*=
是一个现有的运营商。在这种情况下,x*=0
将简单地将x乘以0,而不是您希望实现的结果。
相关文章:
- C++为一串单词添加空格
- 我还可以添加什么来按空格或空格正确拆分C++字符串?
- 在特定位置为字符串添加空格
- 在单词之间添加空格
- 如何在括号与代码之间添加空格以进行C++?
- 在字符串中的字符前添加空格C++插入函数
- 如何在两个单词之间添加空格
- 如何使用 << 添加一个空格来填充带有 ofstream 的减号?
- 我正在尝试在字符数组的中间添加一个空格.不确定如何正确移动它
- 添加尾随空格和使用 eof 时的额外输出
- 如何添加一个空格字符来触发 var args c++ execlp()
- 在 c++ 中的每个标记后添加空格
- C++-向字符串添加空格
- 将具有多个空格的字符串添加到文本文件
- 将空格字符添加到附加的每个项目,以必须擦除最后一个项目.如何改进
- 在 c++ 中将 char 数组(以空格结尾)添加到字符串的错误
- 在字符数组的开头添加空格
- gnu在目录名vpath中添加空格
- 给定一个单词,通过在它们之间添加空格来形成一个有意义的单词
- 如何将带有空格作为参数的路径添加到CreateProcess批处理文件中