BZ易风

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
统计
 

1.构造函数和基本赋值

复制代码
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
using namespace std;
#include <string>

/*
构造函数
string();//创建一个空的字符串 例如: string str;
string(const string& str);//使用一个string对象初始化另一个string对象
string(const char* s);//使用字符串s初始化
string(int n, char c);//使用n个字符c初始化

基本赋值操作
string& operator=(const char* s);//char*类型字符串 赋值给当前的字符串
string& operator=(const string &s);//把字符串s赋给当前的字符串
string& operator=(char c);//字符赋值给当前的字符串
string& assign(const char *s);//把字符串s赋给当前的字符串
string& assign(const char *s, int n);//把字符串s的前n个字符赋给当前的字符串
string& assign(const string &s);//把字符串s赋给当前字符串
string& assign(int n, char c);//用n个字符c赋给当前字符串
string& assign(const string &s, int start, int n);//将s从start开始n个字符赋值给字符串
*/

void test01()
{
    string str;         //默认构造
    string str2(str);   //拷贝构造
    string str3 = str;  //拷贝构造
    string str4 = "abcd";   //使用字符串s初始化
    string str5(10, 'a');   //使用n个字符c初始化

    cout << str4 << endl;
    cout << str5 << endl;

    //基本赋值
    str = "hello";  //string& operator=(const char* s)
    str2 = str4;    //string& operator=(const string &s)

    str3.assign("hello", 4);    //string& assign(const char *s, int n);
    cout << str3 << endl;

    string str6;
    str6.assign(str, 1, 3);     //string& assign(const string &s, int start, int n);  从0索引
    cout << str6 << endl;
}


int main()
{
    test01();
    system("Pause");
    return 0;
}
复制代码

结果:

 

posted on   BZ易风  阅读(144)  评论(0编辑  收藏  举报
编辑推荐:
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
阅读排行:
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· Vite CVE-2025-30208 安全漏洞
· 《HelloGitHub》第 108 期
· MQ 如何保证数据一致性?
· 一个基于 .NET 开源免费的异地组网和内网穿透工具
历史上的今天:
2019-08-26 http---返回网页(普通,多进程,多线程,协程方式实现)
 
点击右上角即可分享
微信分享提示