#include<iostream>
//void swap(const int *&p1, const int *& p2) // int 之前加const会导致swap函数错误,const不能修饰引用,引用不是常量
void swap( int *&p1, int *& p2) //此处函数的形参p1, p2都是引用
{
// int *p;
// *p=*p1;
// *p1=*p2;
// *p2=*p;
}
int main() {
int *a,*b;
std::cin>>*a>>*b; //输入a,b两变量的值
swap(a,b); //直接以变量a和b作为实参调用swap函数
std::cout<< *a << " " <<*b; //输出结果
}
- const 修饰的参数不能作为左值,如果const修饰的参数作为左值,系统报错;
- swap函数执行时,会匹配参数类型,如果参数类型不一致或函数不存在,编译器报错。如果指针的引用做形式参数,那些swap函数的实参一定是指针类型,形参是实参的一个别名。
分享到:
相关推荐
容器指针引用示例通常会涉及到如何在容器中使用指针和引用,以及它们之间的相互操作。下面我们将深入探讨这些主题。 首先,容器如vector或list通常用于存储对象的集合。当我们在容器中存储指针时,可以指向动态分配...
"指针引用和动态空间管理" 指针是计算机编程中的一种重要概念,它用于存储特定类型数据的地址。指针的类型就是指针所指向的数据类型。指针可以分为两种特殊的指针:void指针(无类型指针)和空指针(NULL)。 指针...
在编程领域,尤其是在C++这样的面向对象编程语言中,"抽象类指针引用"是一个重要的概念,涉及到类的设计、继承和多态性。抽象类通常包含至少一个纯虚函数,不能被实例化,而是作为基类来使用,为派生类提供接口。...
C语言教程第讲-指针引用类型声明完美版资料.ppt 本讲内容主要包括指针、引用、字符串处理、typedef声明类型、循环语句等知识点。 一、指针 指针是一种特殊的变量,它可以存储其他变量的内存地址。指针变量的声明...
### C语言中指针引用多维数组的教学实践 #### 一、指针在C语言中的重要性 C语言是一种基础且重要的编程语言,被众多院校作为程序设计的入门语言。然而,C语言也因其语法的灵活性和变化多端的特点而被认为难以掌握...
程序设计-通过指针引用多维数组 本文主要讲解了程序设计中多维数组的概念和实现,包括多维数组的定义、元素的地址计算、指针变量的使用等方面的内容。 在程序设计中,多维数组是一种常用的数据结构,用于存储和...
在C++编程语言中,多态性和指针引用是核心概念,它们对于理解和编写高效的代码至关重要。本资源包含了一份详实的学习材料,涵盖了这两大主题以及相关知识点,如虚函数、虚基类、抽象类和字符串操作。这些知识点在...
如果想要通过指针参数改变主调函数中的变量,需要使用指向指针的指针或指针引用。 引用传递参数则有所不同,虽然引用在函数内部也是一个局部变量,但它存储的是原始变量的地址。因此,对引用参数的任何操作都会直接...
此时,使用指针引用就显得尤为重要了。 例如,如果我们想要在函数`func1`中更新`pMyClass`所指向的对象,而不只是修改`pMyClass`本身的值,我们可以这样声明函数: ```cpp void func1(MYCLASS*& pMyClass) { ...
引用计数是智能指针常用的一种策略,用于跟踪对象被引用的次数。每当有一个新的智能指针指向该对象,引用计数就会增加;当智能指针析构或者重新赋值时,引用计数会减少。当引用计数变为零时,意味着没有智能指针再...
本文提出了一种基于指针分析的空指针引用故障测试方法。该方法的主要目的是有效检测程序中可能存在的空指针引用故障,这种故障是指针变量指向空地址单元Φ时,对指针进行访问(Access(p))所引发的问题。在软件开发...
面向对象程序设计-数组 指针 引用PPT课件.pptx
此外,使用智能指针(如`std::unique_ptr`和`std::shared_ptr`)也能帮助管理对象生命周期,防止空指针引用。 数据流分析是一种静态分析技术,用于在不实际执行程序的情况下,根据源代码推断变量的可能行为。在Java...
C++指针与引用的区别 指针和引用是C++语言中两种不同的概念,初学者容易把它们混淆一起。这两种概念都是地址的概念,但它们有很多不同的特点和应用场景。 相同点 1. 都是地址的概念;指针指向一块内存,它的内容...
在C++编程语言中,高阶指针和引用是两种重要的高级特性,它们极大地扩展了对内存和对象的操纵能力。本实验通过两个实例详细介绍了这两种概念及其在实际编程中的应用。 首先,我们来看第一个实例,它涉及到了二级...
然而,这也带来了对内存管理的直接责任,其中关键的概念包括指针、引用和动态内存分配。下面我们将详细解析这些知识点。 一、指针 指针是C和C++中的一个核心特性,它存储了变量在内存中的地址。指针变量本身也有一...
程序设计基础-字符串引用方式和指针变量 程序设计基础中,字符串是最基本的数据类型之一。在C语言中,字符串可以用字符数组或指针变量来存放和操作。下面将详细介绍字符串的引用方式和指针变量的使用。 1. 字符串...