C++primer plus和C++ primer的读书心得

本文整理了C++两本经典书籍《C++ Primer Plus》和《C++ Primer》中的重要知识点,包括二维数组传参、泛型函数匹配、作用域与链接性、静态成员函数等。通过对比和解释,帮助读者深入理解C++中的关键概念和技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++两本巨著primer plus和primer太过于经典,以至于读过多次,每次阅读仍然有新的收获,所以将一些零碎的知识点整理在这里,与大家共同进步。

1.i++与++i的效率比较:

    前缀效率高,后缀在递增前需要一个副本。

2.typedef和define的区别

    define进行简单的替换,但是typydef可能带有类型。

    #define float_32 float*
    typedef float* float_32_1;
    float_32 ptr1, ptr2;
    float_32_1 ptr3, ptr4;

ptr2是float,其他是是指针。

3.关于char类型

   char类型有没有符号取决于实现。

char ch;

while(ch = cin.get()!=-1)//可能存在的问题,char为unsigned

{cout<< ch;}

4.关于&&和||优先级的问题

   &&优先于||

int y=1,x=2;

int z=y||x++&&++x;

cout<<x<<y<<endl;

  最后输出的y=1,x=2.因为||截断。优先级只能保证结合的方式,int z=y||(x++&&++x),但是不能保证执行的顺序。

5.二维数组传参的方式

int data[3][4] = { {1,2,3,4},{5,6,7,8},{9,10,11,12}};

int sum(int (*data)[4] , int n){

}//或者 int sum(int[][4],3){}

6.泛型中函数匹配,最佳到最差:

(1) 完全匹配//非const优先非const,在指针和引用的情况下

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值