小白学习,c++基础(二)

1、c++语法检查加强
1.1在这里插入图片描述
1.2在这里插入图片描述
1.3在这里插入图片描述
2、结构体的增强
2.1、c中定义结构体变量需要加上struct关键字,c++不需要
2.2、c中的结构体只能定义成员变量,不能定义成员函数。c++即可以定义成员变量,也可以定义成员函数
C语言

struct stu
{
    int num;
    char name[32];
/* c语言 不允许在结构体中  定义成员函数
    void func(void)
    {
        printf("我是结构体中的func");
    }
    */
};
void test01()
{
    //C语言必须加struct
    struct stu lucy = {100, "lucy"};
}

c++

struct stu
{
    int num;
    char name[32];

    //c++语言 允许在结构体中  定义成员函数
    void func(void)
    {
        printf("我是结构体中的func");
    }

};
void test01()
{
    //C++语言不用加struct
    stu lucy = {100, "lucy"};
    
    //调用结构体中的成员方法(成员函数)
    lucy.func();
}

3、c++新增bool类型
在这里插入图片描述

void test02()
{
    bool mybool;
    cout<<"sizeof(bool) = "<<sizeof(bool)<<endl;//1字节
    mybool = false;
    cout<<"false = "<<false<<endl;//0
    cout<<"true = "<<true<<endl;//1
}

4、三目运算符功能增强
4.1c语言三目运算表达式返回值为数据值,为右值,不能赋值

void test02()
{
    int a = 10;
    int b = 20;
    printf("C语言:%d\n", a>b?a:b);//20

    //a>b?a:b整体结果 右值(不能被赋值)
    a>b?a:b = 100;//err不能被赋值
}

4.2、c++语言三目运算表达式返回值为变量本身(引用),为左值,可以赋值

void test02()
{
    int a = 10;
    int b = 20;
    cout<<"c++中:"<<(a>b?a:b)<<endl;

    //a>b?a:b整体结果是变量本身(引用) 左值(能被赋值)
    a>b?a:b = 100;//b =100
}

在这里插入图片描述
5、c++中的const
5.1、const修饰全局变量num 变量名只读 内存空间在文字常量区(只读)、不能通过num的地址 修改空间内容
5.2、const修饰局部变量data 变量名只读 内存空间栈区(可读可写),可以通过data地址 间接的修改空间内容

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值