C++ 默认值函数参数 重载

//默认值函数参数

/*

* Test.cpp

*

*  Created on: 2014年6月9日

*      Author: John

*/

#include<iostream>

#include<string.h>

#define Pi 3.14

void FunTest(double Radius, double Height=0);

int main()

{

using std::cin;

using std::cout;

using std::endl;

using std::string;

double Radius = 0;

double Height =0;

cout<<"Input Radius:";

cin>>Radius;

cout<<"Do you wanna Input Height?(y/n)";

string line;

cin>>line;

cout<<"str is : "<<line<<endl;

char c = line[0];

std::cout<<"your answer is : "<<c<<endl;;

if(c!=‘y‘){

FunTest(Radius,Height);

}else{

cout<<"Please Input Height : ";

std::cin>>Height;

FunTest(Radius,Height);

}

return 0;

}

//void FucTest(double Radius, double Height = 0)

void FunTest(double Radius, double Height)

{

using std::cout;

using std::endl;

if(Height == 0.0)

{

cout<<"This is a Sphere."<<endl;

cout<<"The Volume of the Sphere is : "<<4*Pi*Radius*Radius*Radius/3.0;

}else{

cout<<"This is a Cylinder."<<endl;

cout<<"The Volume of the Cylinder is : "<<Pi*Radius*Radius*Height;

}

}

//重载

/*

* OverLoading.cpp

*

*  Created on: 2014年6月9日

*      Author: John

*/

#include<iostream>

#include<string.h>

const int  Pi = 3.14;

double CalcVolume(double Radius);

double CalcVolume(double Radius, double Height);

int main()

{

using std::cin;

using std::cout;

using std::endl;

using std::string;

double Radius = 0;

double Height = 0;

cout<<"Enter ‘s‘ for Sphere, ‘c‘ for Cylinder:"<<endl;

string str;

cin>>str;

cout<<"Enter Radius : ";

cin>>Radius;

if(str == "s" || str == "S")

{

cout<<"The Volume of the Sphere is : "<<CalcVolume(Radius)<<endl;

}

if(str == "c" || str == "C"){

cout<<"Enter Height : ";

cin>>Height;

cout<<"The Volume of the Cylinder is : "<<CalcVolume(Radius,Height)<<endl;

}

return 0;

}

double CalcVolume(double Radius)

{

return 4*Pi*Radius*Radius*Radius / 3.0;

}

double CalcVolume(double Radius, double Height)

{

return Pi*Radius*Radius*Height;

}

C++ 默认值函数参数 重载

时间: 2024-08-29 19:21:43

C++ 默认值函数参数 重载的相关文章

38 py改变函数参数的值关键字参数和参数默认值函数中可变参数将序列中的元素值作为函数对应的参数值传

第五课:改变函数参数的值 一个python函数可以有任意多个参数,在一个函数的外部来定义变量,然后把变量作为参数传入到函数内,并且在函数的内部来修改函数的参数值,函数结束之后,这些变量的值在如何变化呢? 给函数传递值有2种:1种是值传递,1种是引用传递 # 改变函数参数的值 # 值传递(数值.字符串.布尔 这些都是值传递) 在函数的内部修改变量值,不改变原参数定义的参数值,解释为: 这个在函数中不会改变原来定义(函数外部)的值 这是因为函数里面会有一个占的概念,外边的变量的值会复制给 占 里面,

freemarker宏的使用有默认值的参数必须排在后面

<#--注意参数1必须放在参数2前面--> <#macro 函数名 参数1 参数2="某值"> ssss</#macro> freemarker宏的使用有默认值的参数必须排在后面,布布扣,bubuko.com

?Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数

Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数 7.4.4  为外部参数设置默认值 开发者也可以对外部参数设置默认值.这时,调用的时候,也可以省略参数传递本文选自Swift1.2语言快速入门v2.0. [示例7-11]以下的代码就为外部参数toString.withJoiner设置了默认的参数"Swift"和"---".代码如下: import Foundation func join(string s1: String, toString

C# 方法中带默认值的参数

设计一个方法的参数时,可为部分或全部参数分配默认值.然后,调用这些方法的代码可以选择不指定部分实参,接受其默认值.除此之外,调用方法时,还可通过指定参数名称的方式为其传递实参.以下代码演示了可选参数和命名参数的用法: using System; using System.Collections.Generic; using System.Text; namespace ParameterInMethod { class Program { private static int s_n = 0;

构造函数含有含默认值的参数

//构造函数含有含默认值的参数 #include "stdafx.h"#include<iostream>using namespace std;class Box{public:    Box(int w = 10, int h = 10, int len = 10);    int volume();private:    int height;    int width;    int length;}; Box::Box(int w, int h, int len)

ES6 函数参数的默认值

基本用法 在ES6之前,不能直接为函数的参数指定默认值,只能采取变通的方法. function log(x,y){ y = y||'world'; console.log(x,y); } log('kkk');//kkk world 这种写法的缺点在于: 如果参数y赋值了,但是对应的布尔值为false,则该赋值不起作用.如果在调用函数的时候,传入的y参数是一个空字符串,那么y就会被修改为默认值. 避免这个问题,需要先判断一下:1.通过判断值是否等于undefined,2.判断arguments.

C++函数带默认值的几种情形

1. 默认参数的规则 默认值定义 C++支持函数参数带默认值.这里所谓的默认值,指的是在调用函数时,可以不指定某些参数,编译器会自动把默认值传递到函数调用中. 默认值位置 指定默认值的参数必须位于形参列表最右端,从右往左.否则会出现二义性,编译器无法处理. 默认值设置 默认值可以在函数声明或函数定义中设置,只要保证不出现参数重定义即可. 2.默认参数示例 在函数声明中设置默认值 这是最常见的一种情形.主要有以下两种声明方式: 声明中给参数赋默认值 声明中用类型指定默认值 float area(f

?Swift语言中为外部参数设置默认值,可变参数,常量参数,变量参数,输入输出参数

引用自这里:Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数 目录[-] 7.4.4  为外部参数设置默认值 7.4.5  可变参数 7.4.6  常量参数和变量参数 7.4.7  输入-输出参数 7.4.4  为外部参数设置默认值 开发者也可以对外部参数设置默认值.这时,调用的时候,也可以省略参数传递本文选自Swift1.2语言快速入门v2.0. [示例7-11]以下的代码就为外部参数toString.withJoiner设置了默认的参数"Swift"和&qu

ES6: 参数默认值及中间域

下午看了一章 ECMA-262 by Dmitry Soshnikov, 现在稍稍来小结下ES6中的参数默认值以及由此产生的参数中间作用域. 原文地址: http://dmitrysoshnikov.com/ecmascript/es6-notes-default-values-of-parameters/#conditional-intermediate-scope-for-parameters ES6中的参数默认值用法和其他语言都差不多,直接在参数后赋值: 1 function log(me