c++ -const和指针的关系 --每日学习八股文

本文介绍了C++中的const与指针的关系,包括const修饰指针和指针所指内容的差异。内联函数与宏定义的区别在于类型检查和代码插入时机。引用作为变量的别名,必须在声明时初始化,而指针则不然。const在函数参数中的使用能防止意外修改,并允许处理const和非const对象。左值和右值以及它们的引用涉及C++的对象生命周期和赋值规则。结构体与类的差异主要体现在默认访问权限、存储方式和构造函数的要求上。
摘要由CSDN通过智能技术生成

1.  const和指针的关系

int t=10;
const int* ptr =&t;//1
int const* ptr2=&t;//2

(1) const (int *)表示,指针指向的值不可以被改变。

(2)int (const *) const,修饰的是指针,表明,指针指向的是t,指针不可以指向其他位置,但指针的内容可以改变。

2. 什么是内联函数?内联函数和宏定义的区别?

  内联函数:使用函数代码替代函数调用。编译的时候代码插入。

  c 语言宏定义:预编译的时候进行宏展开。

  宏定义没有类型检查,内联函数有宏定义检查。

3.什么是引用,引用和指针的区别?

    c++ 中引用变量,可以称为变量的一个别名。在函数中使用较多,可以使用变量本身,而非临时变量。

   引用和指针的区别:引用必须在声明时初始化,指针可以不用。

4. 临时变量、引用参数和const

    如何实参和引用不匹配,c++ 就会生成临时变量。目前也只能在参数为const的引用的时候才可以。

5. 使用const的好处:

(1)避免参数被修改的错误。

 (2)函数可以接受处理const和非const的实参。

 (3)使用const引用函数能够正确生成并使用临时变量。

6. 什么是左值,什么是右值?什么是左值引用?什么是右值引用?

C++ 左值与右值 左值引用与右值引用_右值引用赋值给左值引用_小鹿的洋花园的博客-CSDN博客

7. 结构体和类的区别:

(1)  结构体和类都可以拥有成员变量和成员函数,结构体的成员变量默认是

      结构体的成员:默认是public。

      类的成员:默认是private。

(2)储存方式:结构体储存在栈上。

                           类是引用型,栈上保存的是引用,实际保存在堆上。

(3) 结构体中声明的字段无法赋予初值,类可以。

          结构体的构造函数中,必须为结构体所有字段赋值,类的构造函数无此限制。

     轻量级的使用结构体,重量级的使用类。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值