设为首页 加入收藏

TOP

C++面向对象程序设计之C++的初步知识(四)
2019-07-10 18:11:09 】 浏览:350
Tags:面向 对象 程序设计 初步 知识
mp;
temp = a;
a=b;
b=temp;
}


int main()
{
int i=3,j=5;
swap(i,j);
cout<<i<<","<<j<<endl;    //3,5 不能实现互换
system("pause");
return 0;
}   


变量作为实参不能互换


程序分析:在本例中,a和b开辟临时空间,a和b的空间换了,但i和j的内存空间不变,随着程序结束,a和b的内存被释放。


4.2.传递变量的指针


例1.11 使用指针做形参,实现两个变量的值的互换


#include<iostream>
using namespace std;
void swap(int *p1,int *p2)
{
int temp;
temp = *p1;
*p1=*p2;
*p2=temp;
}


int main()
{
int i=3,j=5;
swap(&i,&j);
cout<<i<<","<<j<<endl;    //5,3 实现两个变量的互换
system("pause");
return 0;
}


指针实现两个变量互换


程序分析:p,指向整数的指针;*p1指向i的指针,*p2指向j的指针,i,j实现互换内存。


4.3.传递变量的别名


因为用传递指针的方法比较麻烦,所以可以用传递别名的方法解决这个不足。


例1.12 使用“引入实参”实现两个变量的值的互换


#include<iostream>
using namespace std;
void swap(int &a,int &b)
{
int temp;
temp = a;
a=b;
b=temp;
}


int main()
{
int i=3,j=5;
swap(i,j);
cout<<i<<","<<j<<endl;            //5,3 实现变量的互换
system("pause");
return 0;
}


传递别名实现两个变量的互换


C++调用函数时有两种传递数据的方式,一种是常用的方法:将实参的值传给形参,形参是实参的拷贝,这种方式称为传值方式调用。另一种是将实参的地址传给引用型形参,这时形参与实参是同一个变量,这种方式称为引用方式调用。


引用小结:引用其实就相当于python中的赋值操作,不会开辟新的内存空间,它只是复制了对象的引用,也就是说除了b这个名字之外,没有其他的内存开销。修改了a,也就二印象了b,同理,修改了b,也就影响了a。


1.3.8 内置函数


指定内置函数的方法很简单,只需在函数首行的左端加一个关键字inline即可。


例1.13 将函数指定为内置函数


#include<iostream>
using namespace std;
inline int max(int a,int b,int c)        //这是一个内置函数,求3个整数中的最大者
{
if (b>a) a=b;
if (c>a) a=c;
return a;
}


int main()
{
int i=7,j=10,k=25,m;
m=max(i,j,k);
cout<<"max="<<m<<endl;   
system("pause");
return 0;
}


程序分析:


1.3.9 作用域运算符


即全局变量和局部变量;全局变量用"::变量名"表示,如"::a"表示全局作用域中的变量a。C++提供作用域运算符":: ",它能指定所需要的作用域。


#include<iostream>
using namespace std;
float a=13.5;            //定义一个浮点型的全局变量a


int main()
{
int a=5;
cout<<a<<endl;            //输出局部变量a的值
cout<<::a<<endl;        //输出全局变量a的值
system("pause");
return 0;
}


程序分析:


1.3.10 字符串变量


双引号--->字符串,即多个字符


单引号--->字符,即单个字符


1.定义字符变量:


string string1;        //定义string1位字符串变量
string string2="China";        //定义字符串string2同时对其初始化
//要使用string类的功能时,在开头应包含“string”头文件,即#include<string> 没有.h


 


2.字符串变量的赋值



复制代码
string0="Canada";


string2=string1;   


string word="Then";        //定义并初始化字符串变量word
word[2]='a';                    //修改序号为2的字符,修改后word的值为"Than"


复制代码


 


3.字符串变量的输入输出


cin<<string1;
cout>>string2;


 


4.字符串变量的运算



复制代码
string1=string2;


string string1="C++";
string string2="Language";
string1=string1+string2;


// ==,<,>,!=,>=,<=


复制代码


 


5.字符串数组


不仅可以用string定义字符串变量,也可以用string定义字符串数组。如:



复制代码
#include<iostream>
using namespace std;


int main()
{
//string name[5];                //定义一个字符串数组,它包含5个字符串元素
string name[5]={"Zahng","Li","Fan","Wang","Tan"};        //定义一个字符串数组并初始化
cout<<sizeof(s

首页 上一页 1 2 3 4 5 6 7 下一页 尾页 4/7/7
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Java 国际化标准程序实现 下一篇Python基础教程之网络编程

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目