Essential C++ 编程基础

慈云数据 8个月前 (03-13) 技术支持 99 0

Essential C++

  • 前言
    • 1.1 如何撰写 C++程序
    • 1.2 对象的定义与初始化
    • 1.3 撰写表达式
    • 1.4 条件语句和循环语句
    • 1.5 如何运用Array和Vector
    • 1.6 指针带来弹性
    • 1.7 文件的读写

      前言

         通过Essential C++笔记的形式对C++相关重点知识进行汇总,读者通读此系列文章就可以轻松的把该语言基础捡起来。

      Essential C++ 编程基础
      (图片来源网络,侵删)

      1.1 如何撰写 C++程序

      int main()
      {
      //    我们的程序代码置于此处
      }
      

      int是C++程序语言的关键字。

      函数(function)是一块独立的程序代码序列(code sequence),能够执行一些运算。它包含四个部分:返回值类型(return type)、函数名称、参数列表(parameter list),以及函数体(function body)。

      Essential C++ 编程基础
      (图片来源网络,侵删)

      main并非是程序语言定义的关键字。但是,执行我们这个C++程序的编译系统,会假设程序中定义有main()函数。如果我们没有定义,程序将无法执行。

      函数的参数列表(parameter list)由两个括号括住,置于函数名之后。空的参数列表,如main(),表示函数不接受任何参数。

      int main(int val1, int val2)
      {
      //    我们的程序代码置于此处
      }
      

      函数的主体(body)由大括号({})标出,其中含有“提供此函数之运算”的程序代码。双斜线(//)表示该行内容为注释,也就是程序员对程序代码所做的某些说明。

      所谓类(class),是用户自定义数据类型(user-defined data type)。class机制让我们得以将数据类型加入我们的程序中,并有能力识别它们。

      class机制,赋予了我们“增加程序内之类型抽象化层次”的能力。

      class的定义,一般来说分为两部分,分别写在不同的文件中。其中之一是所谓的“头文件(header file)”,用来声明该 class 所提供的各种操作行为(operation)。另一个文件,程序代码文件(program text),则包含了这些操作行为的实现内容(implementation)。

      欲使用class,我们必须先在程序中包含其头文件。头文件可以让程序知道class的定义。C++标准的“输入/输出库”名为iostream,其中包含了相关的整套class,用以支持对终端和文件的输入与输出。我们必须包含iostream库的相关头文件,才能够使用它:

      #include

      我将利用已定义好的cout(读作see out)对象,将信息写到用户的终端中。output运算符(<<)可以将数据定向到cout,像下面这样:

      cout > user_name;

      为了产生上述信息,我们的第一个步骤便是将输出位置(屏幕上的光标)调到下一行起始处。将换行(newline)字符常量写至cout,便可达到这个目的:

      cout string user_name; cout user_name; cout // 因为某种原因,档案无法开启 cerr // ok: outfile 开启成功,接下来将数据写入 outfile // 由于某种原因,文件无法打开... // 我们将假设这是一位新的用户... }else{ // ok: 读取档案中的每一行 // 检查这个用户是否曾经玩过 // 每一行的格式是: // name num_tires num_correct // nt: 猜过的总次数(num_tries) // nc: 猜对的总次数(num_correct) string name; int nt; int nc; // while 循环的每次迭代都会读取文件的下一行内容 while(infile name) { // 先将用户猜过的总次数读到nt之中,再将用户猜对的总次数读到nc之中 infile nt nc; if(name == usr_name) { // 找到他了 cout //由于某种原因,文件无法开启……·真糟! }else{ //开始读取之前,将文件重新定位至起始处 iofile.seaxg( 0); //其它部分都和先前讨论的相同 }

微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon