Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1611883
  • 博文数量: 245
  • 博客积分: 10378
  • 博客等级: 上将
  • 技术积分: 2571
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-27 08:19
文章分类

全部博文(245)

文章存档

2013年(4)

2012年(8)

2011年(13)

2010年(68)

2009年(152)

分类: C/C++

2009-04-09 21:25:24

1  作用域:
变量在程序中的起作用范围简单分为:全局作用域、局部作用域、语句作用域作用域优先级: 范围越小优先级越高作用域运算符:“::”
如果希望在局部变量的作用域内使用同名的全局变量,可以在该变量前加上“::” ,“::”称为作用域运算符。变量的作用域是一个非常重要的概念
 
 
在C++中,结构名、联合名(共用体名)、枚举名都是类型名。如:
enum bool{FALSE,TRUE};
struct string{
  char *prt;
  int length;
};
在C中:
  enum bool done;
  struct string str;
在C++中:
 bool done;
 string str;
指向常量的指针变量
const char *p_name = “chen”;
以下语句:
     p_name[2]=’a’;   //错误
     p_name=“zhang”; //正确
常(量)指针:
如: char * const p_name = name1;
       以下语句:
     p_name[2]=’a’;  //正确
     p_name=“zhang”; //错误
在函数说明前冠以关键字“inline”,则该函数就被声明为内联函数。
每当程序中出现对该函数的调用时,C++编译器使用函数体内的代码替代函数调用表达式
使用内联函数替代宏定义,可以消除宏定义的不安全性。
C++在声明函数原型时,可为一个或多个参数指定缺省参数值,以后调用此函数,若省略其中某一参数,C++自动地以缺省值作为相应参数的值
。例如函数原型说明为:
     int special(int x=5,float y=5.3);
当进行函数调用时,可以有以下几种形式:
 1)  special(100,79.8);  // x=100,y=79.8
 2)  special(25);  // x=25,y=5.3
    3)  special();  // x=5,y=5.3
 说明:
只能在声明时设置默认参数
缺省参数都必须是从右到左定义
 如:int fun(int i,int j=5,int k);//错误,k未使用
调用时实参对形参的初始化必须是从左向右的

在传统的C语言中,函数名必须是唯一的,也就是说不允许出现同名的函数。当要求编写求整数、浮点数和双精度的平方数的函数时,若用C来
实现必须编写三个函数:
iSquare(int x)
fSquare(float x)
dSquare(double x)
在C++中用户可以重载函数,即只要函数参数的类型不同,或者参数的个数不同,或者二者兼而有之,两个或两个以上的函数可以使用相同的函
数名。
 
 
阅读(704) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~