C++学习

不行啊,没办法,数据结构与算法好多都与C++相关,不学点C++对学习不利

开始干它!

学习地址:C++ 简介 | 菜鸟教程 (runoob.com)

vscode配置C++方案VSCode配置C/C++环境_小神仙的博客-CSDN博客

面向对象程序设计

四大特性

  • 封装
  • 抽象
  • 继承
  • 多态

基本语法

#include <iostream>    // 包含头文件
using namespace std;    // 告诉编译器使用std命名空间
int main()
{
    cout << "Hello world!"; // 输出
    return 0;
}

内置数据类型

布尔型 bool

字符型 char

整型 int

浮点型 float

双浮点型 double

无类型 void

宽字符型 wchar_t (typedef short int wchar_t)

布尔常量:true和false

输入和输出

标准输出流(cout)

相当于C语言的printf

cout << "...." << str << endl;

endl用于在行末添加一个换行符

标准输出流(cin)

相当于C语言的scanf

char name[50];
cout << "请输入你的姓名:";
cin >> name;
cout << "你的名字是:" << name << endl;
cin >> name >> age;    // 可多次输入数据
// 相当于
cin >> name;
cin >> age;

标准错误流(cerr)

char str[] = "Unable to read...";
cerr << "Error Message: " << str << endl;
// 输出:Error Message: Unable to read...

标准日志流(clog)

和上一个差不多

::

  • 作用域符号,前面一般跟类名称,后面一般跟类的成员名称

eg: A::member 表示类A中的成员member

B::member    表示类B中的成员member
  • 全局作用域符号:用来区分全局和局部函数和变量

eg:

char a = "hello";
void print()
{
    char a = "world";    // 局部变量
    cout << a << endl;    // 输出局部变量
      cout << ::a << endl;    // 输出全局变量
}

C++中的string类

// 头文件
#include <string>
string s;    // 声明一个string对象
string ss[10];     // 声明一个stirng对象的数组

常用相关操作

s.empty();    // 判断字符串是否为空
s.size();    // 返回字符串中字符个数
s = s1 + s2;    // 将两个字符串拼接在一起,并返回新生成的字符串

添加

s.append("world");    // s后追加world
s.append(s1);    // s后追加s1
s.append(10, "a");    // s后追加10个a
s.append(s1, 2 ,2);    // 从s1的第二位开始,添加2位

具体的需要再查吧

小结

c++大体上跟C语言差别不大,就是小部分语法和新增的对象(类)等概念不同

最后修改:2021 年 10 月 25 日
如果觉得我的文章对你有用,请随意赞赏