首页 > 编程语言 >黑马阶段三 C++篇 02day

黑马阶段三 C++篇 02day

时间:2023-03-16 23:35:13浏览次数:43  
标签:arr const 函数 int 02day C++ 引用 黑马 cout

2day
1.引用是什么:给变量空间取别名
int main()
{
int a = 0;
int& b = a;
b = 100;
cout << a << endl;
return 0;
}
2.引用的注意
使用引用类型可以像指针那样访问 只能赋值一次不能重新赋值
必须初始化
必须引用合法的空间
引用类型无法修改指针的指向地址
int main()
{
int a = 0;
int* b = &a;
b = (int *)0x123;//会产生不安全
*b = 111;
cout << b << endl;
cout << a << endl;
return 0;
}
3.数组引用
三种引用方法
int arr[] = { 1,2,3,4,5 };
//1.
typedef int(MY_arr)[5];
MY_arr& arr = arr;
//2.
int(&c)[5] = arr;
//3.
typedef int(&MY)[5];
MY c = arr;
4.引用的本质
image

5.const和define的区别

define ZE 100//类型固定

const int B = 1;//类型随时可以改
6.指针引用
image

const char p= "翠花";
p = "小学生";
const char
& p1 = p;
p1 = "cx";
cout << p1 << endl;
cout << p << endl;
return 0;
被调函数和主调函数 --字面意思

8.常量引用 bool类型
常量如此 bool类型 非0为真 0为假

总结 引用无法改变 指针的指向 使得指针不会乱指 提高了安全性
9.内联函数
速度快

define arr(a, b) a+b; 如这个函数一样

inline 申请成为内联函数 还得看编译器采纳吗
1.内联函数 以及   宏函数
2.什么情况下不会成为内联函数
1.语句块过大
2.过多条件判断
3.函数体取址

标签:arr,const,函数,int,02day,C++,引用,黑马,cout
From: https://www.cnblogs.com/Agtw/p/17224678.html

相关文章

  • 68.C++中的const
      编写程序过程中,我们有时不希望改变某个变量的值。此时就可以使用关键字const对变量的类型加以限定。初始化和const  因为const对象一旦创建后其值就不能再改变,所......
  • C/C++ 宏 ##和#和#@
    ##:起到字面拼接的作用#definef(a,b)a##b f(1,2)等价于12,f(str,1)等价于变量str1 #:把字符串加双引号#defineg(a)#ag(str)等价于"str" #@:把字符串加单引号......
  • 【并发编程十七】c++实现一个线程池
     【并发编程十七】c++实现一个线程池一、线程池原理二、实现重点三、个人理解四、实验 简介:大多数系统上,若因某些任务可以与其他任务并行处理,就分别给他们......
  • 【并发编程十四】c++原子操作(2)——实现自旋锁
     【并发编程十四】c++原子操作(2)——实现自旋锁一、自旋锁简介二、使用自旋锁三、不使用自旋锁四、分析 简介在介绍完原子操作,我们这篇使用c++提供的原子操......
  • 【并发编程十三】c++原子操作(1)
     【并发编程十三】c++原子操作(1)一、改动序列1、改动序列2、预测执行二、原子操作及其类别1、原子操作2、非原子操作3、原子类型三、标准原子类型1、......
  • 65.C++的输入流和输出流
    1.流的概念和流类库的结构  程序的输入指的是从输入文件将数据传送给程序,程序的输出指的是从程序将数据传送给输出文件。  C++输入输出包含以下三个方面的内容:  ......
  • 【并发编程十】c++线程同步——条件变量(condition_variable)
     【并发编程十】c++线程同步——条件变量(condition_variable)一、互斥二、条件变量1、为何要引入条件变量?2、不使用条件变量3、使用条件变量3.1、互斥锁有什......
  • 【并发编程七】C++进程通信——套接字(socket)_80行代码实现一个聊天软件
     【并发编程七】进程通信——套接字(socket)_80行代码实现一个聊天软件一、简介二、相关知识介绍1、winsock1.h、winsock2.h2、如何使用ws2_32.dll3、WSAStartup......
  • 【并发编程三】C++进程通信——管道(pipe)
     【并发编程三】C++实现通信——管道(pipe)一、管道(pipe)二、匿名管道1、简介2、父子进程:匿名管道的通信过程?3、相关函数3.1、创建管道CreatePipe3.2、写入管......
  • 【并发编程六】c++进程通信——信号量(semaphore)
     【并发编程六】c++进程通信——信号量(semaphore)一、概述二、信号量三、原理四、过程1、进程A过程2、进程B过程五、demo1、进程A2、进程B六、输出......