整数文字作为cpp中函数声明的参数
Integer literal as parameters of function declaration in cpp
我几乎熟悉 c
和 c++
编程。今天我在搜索函数声明时突然遇到 c++
语言中的一个奇怪语法。
我写了下面的代码:
#include <iostream>
using namespace std;
int foo('3');
int bar(3);
int main(){
}
我从未见过将文字定义为函数参数!所以我预计在编译这个程序时会出现编译错误:
$ g++ file.cpp
但是编译没有问题!
所以我很想知道 int foo('3');
和 int bar(3);
行的 含义 和 用法 是什么?
分别表示int foo = '3';
和int bar = 3;
但这并不完全等同,例如with 类 =
不允许 explicit
构造函数。
我几乎熟悉 c
和 c++
编程。今天我在搜索函数声明时突然遇到 c++
语言中的一个奇怪语法。
我写了下面的代码:
#include <iostream>
using namespace std;
int foo('3');
int bar(3);
int main(){
}
我从未见过将文字定义为函数参数!所以我预计在编译这个程序时会出现编译错误:
$ g++ file.cpp
但是编译没有问题!
所以我很想知道 int foo('3');
和 int bar(3);
行的 含义 和 用法 是什么?
分别表示int foo = '3';
和int bar = 3;
但这并不完全等同,例如with 类 =
不允许 explicit
构造函数。