• 从0开始读C++Primer|第一章 开始


    1.编写一个简单的C++程序

    组成:

            C++程序由多个函数组成,其中一个必须为mian函数。那么我们就有必要了解函数的组成。函数的组成:函数返回类型、函数名、形参列表、函数体。我感觉自己在平时经常忘记写形参和返回值,其实还是没有搞懂函数的定义。

            其中,mian函数的返回值用来指示状态,0正常 -1异常。

    编译运行程序:

            程序由编译器来编译。如果编译器和其它程序的创建和分析工具包装在一起,就叫做IDE(集成开发环境)。编译器要求我们将程序放在文件中,这种程序文件就是源文件。一般来说,我们用IDE或命令行窗口来编译程序。

            IDE

            命令行:

                    编译器会将源文件生成可执行文件。 CC是编译器的名字。

    $ CC prog.cc

                     然后运行这个可执行文件。通常给出可执行文件名即可,但也有的需要给出文件所在位置。就是在前面加上 ./ 表示文件就在当前目录中。

    2.初识输入输出

            需要引入头文件 

    #include 

            头文件包括istream和ostream。也就是输入流和输出流。(这种流的意思,可以把它比作水流一样,强调一种顺序性)。

            这个头文件主要包括4种对象:cin,cout,cerr(运行时的错误信息),clog(运行时的正常信息)

    1. int x,y;
    2. std::cin >> x >> y;
    std::cout << "hello,world!" << endl;

             这里出现了 << 和 >>两个符号,它们都是一种运算符(就和加减乘除一样),它们的返回结果是它们左侧的内容。其中<<是输出运算符,返回值是std::cout。>>是输入运算符,返回值是std::cin。这就是为什么我们可以看到上述的代码。因为左侧只要输出了结果,就会返回左侧内容,就相当于每一个输入输出的左侧最终都是std::cin 或 std::out,和拆开来写完全等价。所以这样也成功地让其可以输入和输出多种类型的数据(相当于每一次都用输出输入不同类型的cin和cout来进行处理,看起来好像可以同时处理一样)。

            // 我有一个小窍门:我们常常用右手取东西,所以输入就是左手把东西交给右手>>,输出就是右手把东西递给左手<<

            ::运算符是作用域运算符,是为了避免命名冲突被设计的。标准库的所有名字都在命名空间std里面。

            endl是一种操作符,结束当前行,并将缓存区的内容刷到设备中。

            我们其实可以利用输入输出的返回值作为判断条件,比如你定义了一个整型变量x;要获取连续输入的数字,直到你检测到了文件结束符或者不符合你接受的数据的数据类型时,cin >> x 就会返回为false了。

            函数的()其实是调用运算符。

    3.注释简介

    1. // 注释一行或半行
    2. /*
    3. *
    4. * 注释多行,为了方便识别,在每一个中间行加*
    5. *
    6. */
    7. // /**/ 不能嵌套使用,只要匹配了一对注释,后续内容就不会被编译器认作注释。

     4.控制流

    就是在强调命令执行的顺序。

    5.类简介

            类就是我们自己定义的数据类型(就和int,float一样)

            当我们写一个类的对象时,就类似(int x,y;)

            类和结构体的区别:

                    类默认的可见度是private,结构体默认是public。结构体不支持继承,多态等面向对象的设计。剩下的在使用的时候其实都一样。

    5.书店程序

            这里我觉得书上的例子举得特别好——在将输入输出的时候,它给了一个不断连续获取数字求和的例子,现在又给了不断输入书籍的编号,去求书籍总数的例子。其实就是,不要把类和对象看得太复杂。就只是用户自定义的类型,和这种类型的变量罢了。 

  • 相关阅读:
    ElasticSearch-查询语法(聚合查询)
    为svn服务增加自助修改密码功能
    【基础算法】 排序算法
    拍摄视频,真的帧率越高越好吗?
    java计算机毕业设计校园爱心公益平台设计与实现源码+系统+mysql数据库+lw文档+部署
    二叉树 | 指针pre | 最值、众数、累加树 | leecode刷题笔记
    【Python】批量提取图片经纬度并写入csv文件
    第20篇 2D绘图(十)图形视图框架(下)
    c++推箱子小游戏
    电子标准院工程师鲍薇:人工智能标准化引领产业发展
  • 原文地址:https://blog.csdn.net/weixin_64434454/article/details/139483208