栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

笔记--第二课局部变量的初始化、auto的使用、引用、常量

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

笔记--第二课局部变量的初始化、auto的使用、引用、常量

一、变量初始化

1、变量定义和初始化

int age=25;   等价   Int age{25};   等价  int age={25};

for(int i = 0;i < 10;i++)
{
  cout<< i < 

等价

for(int i{0};i < 10;i++)
{
  cout<< i < 

等价

for(int i={0};i < 10;i++)
{
   cout<< i < 

2、数组定义和初始化

int array[]{1,2,3,4,5,6,7,8,9,10};    等价    int array[]={1,2,3,4,5,6,7,8,9,10};

例子如下图所示:

#include 
#include 
using namespace std;

int main()
{
    int array[]{1,2,3,4,5,6,7,8,9,10};
    for (int i{0}; i < 10;i++)
    {
        cout << "array["< 

以上代码输出内容为:

二、auto的使用

auto:变量的自动类型推断。可以在声明变量的时候,根据变了初始值的类型,自动为此变量选择匹配数据类型(声明时要赋予初值)。

auto自动类型推断发生在编译期间,所以不会造成程序执行效率降低。

#include 

#include 


using namespace std;


int main()
{
    auto str = "HelloWorld!!!";//auto自动识别str数据类型为string类型
    cout << str << endl;
    auto data = 123;//auto自动识别data数据类型为int类型
    cout << data << endl;
    auto float_data = 123.456;//auto自动识别float_data数据类型为float类型
    cout << float_data << endl;
    auto ch = 'h';//auto自动识别ch数据类型为char类型

    //定义一个局部变量的i,auto自动识别i数据类型为int类型
    for (auto i{ 0 }; i < 10;i++)
    {
        cout << i<<" ";
    }
    cout << endl;
    return 0;

}

三、&引用

引用:为变量起了另外一个名字。一般用&符号表示。起完别名后,这别名和变量本身我们就看成是同一个变量。

int value  = 123;

int &temp = value;  //value的别名是temp,这里&不是C语言中的地址运算符,只是起标识作用,表示引用的时候,&在原变量别名的前面(等号的左边),表示地址运算符则在等号右边。

temp = 100;    //则value的值也是100.

如下所示:

#include 
#include 

using namespace std;

int main()
{
    int value = 123;
    int& temp = value;  //value的别名是temp,这里&不是C语言中的地址运算符,只是起标识作用。
    cout <<"temp = " << temp << endl;

    temp = 100; //则value的值也是100.
    cout <<"value = " << value << endl;
    return 0;
}

(1)引用的定义并不占用内存,或者引用和原变量似乎占用同一个内存(表面看是占用同一个内存,实际不是占用同一个内存)。

(2)定义引用的时候必须初始化,如int& temp = value;否则没有办法为value起别名,如下定义引用编译系统就会报错:

#include 
#include 

using namespace std;

int main()
{
    int& temp;
    return 0;
}

报错如下所示:

(3)另外初始化引用的时候,不能用常量为其初始化,如int&temp=2;是非法的。

(4)定义引用时,引用的变量数据类型必须与原变量数据类型一致,如这样写也是非法的。

#include 
#include 

using namespace std;

int main()
{
    int value = 123;
    float& temp = value;
    return 0;
}

1、引用的运用

例1:

#include 
#include 

using namespace std;

void func(int &a,int&b)//形参是引用类型
{
    //改变形参a和b,则会改变实参的数据。
    a = 100;
    b = 200;
}

int main()
{
    int a = 123;
    int b = 456;
    cout << "原来a = " << a << endl;
    cout << "原来b = " << b << endl;

    func(a,b);
    cout << "现在a = " << a << endl;
    cout << "现在b = " << b << endl;
    return 0;
}
四、const和constptr的使用

待续......

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/942494.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号