C++中怎样可以定义没有参数的函数!

自定义的函数是不是都得有参数呀?
比如说
void xx(int x)
{
cout << "XXXXX" << endl;
}
int main()
{
//调用时就得加上参数
xx(0);

//为什么不能像系统函数一样 像这样
getch();

}
2楼的可以了不过这个警告怎么去掉? 我新手好多地方都不懂!
1>.\Window.cpp(23) : warning C4996: “getch”被声明为否决的
1> E:\VS\VC\include\conio.h(145) : 参见“getch”的声明
1> 消息:“The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _getch. See online help for details.”

C++中定义没有参数的函数有两种方法。

 

方法1(空括号法):

返回值类型 函数名()

{

    函数体;

}

例如:

int getarand()
{
    return rand()%10; //产生一个0-9之间的随机数
}

方法2(强调法):

返回值类型 函数名(void)

{

    函数体;

}

int getarand(void)
{
    return rand()%10; //产生一个0-9之间的随机数
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-15
void xx(void)//这行也可以这样写:void xx(),但是这样的可读性高
{
cout << "XXXXX" << endl;
}
int main()
{
//调用时就不必有参数了
xx(0);

}
函数可以有0个或多个参数,但是一旦声明参数类型为void,我们就不能给它命名,举个例子:
void xx(void inta)//错误
void xx(void,void)//错误
void xx(void,int q)//错误
void xx()//正确
void xx(void) //正确
另外补充一点:一楼是用C语言写的,不是C++,所以当然会编译错误,把main()改成int main()本回答被提问者采纳
第2个回答  2009-07-18
楼上的说法正确。
不过你也可以搞个默认值,这样就不可以不输入参数了。
void xx(int x=0)//设置x的默认值为0,如果调用时没有参数就默认用0
{
cout << "XXXXX" << endl;
}
int main()
{
//调用时就得加上参数
xx();////////////////////////

//为什么不能像系统函数一样 像这样
getch();

}
第3个回答  2009-07-18
不是啊,你这个不就是不用参数吗
void xx()
{
cout << "XXXXX" << endl;
}
int main()
{
//调用时就得加上参数
xx();

//为什么不能像系统函数一样 像这样
getch();

}
第4个回答  2009-07-18
也可以没有参数 举例
void fun()
{
cout<<"xxxxxx"<<endl;
}
main()
{
fun();
}
这样的输出结果就是xxxxxx
这个定义的函数fun就是无参数的
相似回答