Date:
2014-1-9

Summary:

函数参数相关记录

Contents:
1.形参实参

形参:用于接收值的变量被称为形参

实参:传递给函数的值被称为实参

2.函数的参数传递之后2种

a).值传递.将实参的值拷贝之后,传递给形参(如果是指针,则拷贝指针的值,传递给形参)

b).引用传递.如果形参是引用,则形参被绑定到了对应的实参上

Notes:

1.使用引用作为形参,尽量避免拷贝

2.函数参数,非引用传递,则为拷贝值传递

EX:

     //
// main.cpp
// Cpp_All_Test
//
// Created by StephenLee on 1/1/14.
// Copyright (c) 2014 StephenLee. All rights reserved.
// void mySwap(int* pNum1,int* pNum2)
{
int temp = (*pNum1);
(*pNum1) = (*pNum2);
(*pNum2) = temp;
} void mySwap(int& num1,int& num2)
{
int temp = num1;
num1 = num2;
num2 = temp;
} int nNum1 = ;
int nNum2 = ;
cout << "nNum1:" << nNum1 << "\nnNum2:" << nNum2 << endl;
mySwap(&nNum1,&nNum2); cout << "after mySwap \nnNum1:" << nNum1 << "\nnNum2:" << nNum2 << endl; mySwap(nNum1,nNum2);
cout << "after mySwap \nnNum1:" << nNum1 << "\nnNum2:" << nNum2 << endl;

THE END

[C++]函数参数浅析的更多相关文章

  1. (读书笔记)函数参数浅析-JavaScript高级程序设计(第3版)

    ECMAScript函数不介意传递的参数个数,因为在其内部是用一个数组进行表示的.在函数体内可以通过arguments对象来访问这个参数数组,就像我们正常访问数组一样处理. arguments对象只是 ...

  2. Delphi_08_Delphi_Object_Pascal_基本语法_06_函数参数

    发现Delphi中关于函数参数部分的内容还是比较多的,暂时说到这篇随笔为止吧,以后再继续讨论一下函数的参数部分的内容. 一 工程文件 program DefaultParameter; {$APPTY ...

  3. 深入理解javascript函数参数与闭包(一)

    在看此文章,希望先阅读关于函数基础内容 函数定义与函数作用域 的章节,因为这篇文章或多或少会涉及函数基础的内容,而基础内容,我放在函数定义函数作用域 章节. 本文直接赘述函数参数与闭包,若涉及相关知识 ...

  4. php与js中函数参数的默认值设置

    php函数参数默认值设置: <?phpfunction test($val=3){   echo $val."<br/>";}test(11);test();?& ...

  5. JS中的函数(二):函数参数(你可能不知道的参数传递)

    前言: 函数分为有参有返回值,有参无返回值,无参无返回值,无参有返回值:那么对于无参数的函数你想使用函数的调用怎么办呢?如果你想封装一个代码,实现多种功能,但是形参大于实参或者实参大于形参又该如何?本 ...

  6. Python函数参数学习笔记

    1.Python中函数参数类型可分为五种: f(x):x为位置参数: f(x,n=2):n为默认参数,调用时可以省略参数n,如f(5); f(*args):*args表示把args这个list或tup ...

  7. C语言指针变量作为函数参数

    0x01 指针变量作为函数参数的作用是:将一个变量的地址传送到另一个函数中. 0x02 简单的例子:虽然都能实现功能,但意义不同. 正确的写法: #include <stdio.h> vo ...

  8. 深入理解javascript函数系列第二篇——函数参数

    × 目录 [1]arguments [2]内部属性 [3]函数重载[4]参数传递 前面的话 javascript函数的参数与大多数其他语言的函数的参数有所不同.函数不介意传递进来多少个参数,也不在乎传 ...

  9. Python函数参数默认值的陷阱和原理深究"

    本文将介绍使用mutable对象作为Python函数参数默认值潜在的危害,以及其实现原理和设计目的 本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...

随机推荐

  1. 基于visual Studio2013解决C语言竞赛题之0705矩阵转置

     题目 解决代码及点评 /* 5. 写一函数,将一个3×3的矩阵转置. */ #include <stdio.h> #include <stdlib.h> void mai ...

  2. PHP - 设置地址栏小图标

    效果: 1/把icon图标直接放到根目录. 2/在header标签中写下: <link rel="icon" type="image/x-icon" hr ...

  3. BZOJ 2005: [Noi2010]能量采集( 数论 + 容斥原理 )

    一个点(x, y)的能量损失为 (gcd(x, y) - 1) * 2 + 1 = gcd(x, y) *  2 - 1. 设g(i)为 gcd(x, y) = i ( 1 <= x <= ...

  4. 根据IP地址获得地理位置

    ///<summary> /// 提供从纯真IP数据库搜索IP信息的方法: ///</summary> public class IPSelect { FileStream i ...

  5. POJ 2187 Beauty Contest 凸包

    Beauty Contest Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 27276   Accepted: 8432 D ...

  6. HDU 4882 ZCC Loves Codefires(贪心)

     ZCC Loves Codefires Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/O ...

  7. poj3356 AGTC

    Description Let x and y be two strings over some finite alphabet A. We would like to transform x int ...

  8. SQL Server Join方式

    原文:SQL Server Join方式 0.参考文献 Microsoft SQL Server企业级平台管理实践 看懂SqlServer查询计划 1.测试数据准备 参考:Sql Server中的表访 ...

  9. 基于visual Studio2013解决C语言竞赛题之1062高与矮

       题目 解决代码及点评 /************************************************************************/ /* 62 ...

  10. hdu 1540 Tunnel Warfare(线段树区间统计)

    Tunnel Warfare Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) T ...