搜文章
推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > dbskxgdn > c++友元,inline,const成员函数重载,public和private的区别,class和struct的区别

c++友元,inline,const成员函数重载,public和private的区别,class和struct的区别

dbskxgdn 2020-08-02

文章目录


    • 基于const的重载

    • const成员函数失效,mutable

    • inline函数怎么定义?

    • 友元是什么?友元怎么声明?

    • 类的用户访问友元怎么声明?

    • 类的成员访问友元怎么声明?

    • public和private的区别?

    • class和struct的区别?

    • 内联函数是什么?


基于const的重载

class A{
public:
A &fun(){smallfun();return *this}
const A &fun()const{smallfun();return *this}
private:
smallfun()const{}//相同功能
};

const成员函数失效,mutable

成员数据加修饰mutable,就可以被const成员函数修改了

inline函数怎么定义?

class A{
private:
fun();//如果有定义则默认inline,此处只是声明,不是inline
};
inline fun(){
...}

友元是什么?友元怎么声明?

一种访问说明,类A外部的【类】或【函数】可以访问类A的private成员。

class A{
friend fun();//在此声明插件
}

类的用户访问友元怎么声明?

class A{
friend fun();
}
fun();//类外部还要再次声明

类的成员访问友元怎么声明?

extern fun();//类外部还要再次声明
class A{
friend fun();
private:
memfun(){fun();}//2.才能调用
}

public和private的区别?

  1. 修饰类内成员时,private修饰的只能类自己用,类外不能访问。

class和struct的区别?

默认访问说明符不一样,class默认private,struct默认public

内联函数是什么?

相当于宏定义,避免函数调用的开销。


版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《c++友元,inline,const成员函数重载,public和private的区别,class和struct的区别》的版权归原作者「dbskxgdn」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读