c++基础


1. c++基础

1.1. Union联合体

union{
	linkNode link;
	NetNode net;
}LinkOrNet

结构体中有两个变量,但是只能有一个变量占据内存

c++17 中替代方案variant

#include <variant>
varient<linkNode, NetNode> a; 
LinkNode b;
a= b; // 自动追踪

1.2. string

1.2.1. 构造函数

  1. char*转换string(const char* s, size_type n)

    char c = 'a';
    string s(&c);
  2. char转换std::string(size_type n, char c)

    char c = 'a';
    string s(4, c); // 生成4个c
  3. 子字符串构建string(s, start_pos, len)

    string s = "aaaaaaaaaaa";
    string s1(s, 3, 4); // 从3 开始字符串长度4
    
    //类似切割字串
    string s2 = s.substr(3, 4);
  4. 迭代器构造string(start_pos, end_pos)

    char c[] = "aaaaa";
    string s1(c, c+3); // 起始位置为c, 终止c+3;
    vector<char> v = {'a', 'b'};
    string s2(v.begin(), v.end());

1.2.2. 查找函数find(s, start_pos)

1.2.3. 字符串比较 s , t

s == t // string中具有运算符重载

文章作者: 小白菜
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 小白菜 !
评论
  目录