1.C到C++的升级

/****************************************************************

 这是看了唐老师的C++视频后的学习笔记,记录自己每天的进步!奋斗

***************************************************************************//


一.C++是C语言为基础,支持面向对象的,强类型,函数加强,异常加强。

    1. C++语言中,所有变量都可以在需要用时再进行定义,比较方便。

        C语言的变量必须在作用域的开始进行定义。

    2. register关键字的变化

            register关键字请求“编译器”将局部变量存储于寄存器中。

           C++中也支持register关键字,但C++编译器中有自己的优化方式。

   3. C++中不允许定义同名变量。

   4.C++中的const

              C语言中的const变量是只读变量,有自己的存储空间。

             C++的const可能分配存储空间疑问

                      当const常量为全局,并且需要在其他文件中使用。

                        当使用&操作符去const常量的地址。

#include <stdio.h>
int main(int argc, char** argv) 
{
	const int c = 10;
	int *p = (int *)&c;
	
	*p = 5;
	
	printf("%d \n",c);
	return 0;
}
    输出结果为:10
             

             C++中的const常量类似于宏定义。  const int  c = 5;      define c = 5;

             C++中的const常量与宏定义不同。

                        C++中的const常量由编译器处理,提高类型检查和作用域检查。

                         宏定义由预处理器处理,单纯的文本替换。

  5.C++中struct类型的加强。

                C语言中struct认为定义一组变量的集合,c编译器并不认为这是一种新类型。

                C++中的struct是一种新类型的声明。

#include <stdio.h>

struct Student
{
    const char* name;
    int age;
};

int main(int argc, char** argv) 
{
	Student s1 = {"Delphi", 30};
    Student s2 = {"Tang", 30};
    
    printf("Press enter to continue ...");
    getchar();
    
    return 0;
}

6. C++中所有变量和函数必须有类型。

         int f(); int f(void)具有相同的意义,都表示返回为int的无参数类型。


                   





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值