首页 > 其他分享 >string类构造函数与析构函数

string类构造函数与析构函数

时间:2023-10-15 14:12:07浏览次数:34  
标签:string 与析构 s1 初始值 char 字符串 构造函数

string类构造函数与析构函数

构造函数

构造函数 作用
string s 构造一个空字符串
string s(s1) 生成一个和s1相同的空字符串s
string s(s1,5) 将s1[5]以后的部分作为s的初始部分
string s(s1,5,5) 将始于s1[5],长度为5的部分作为s的初始值
string s(cstr) 以C_string类型的cstr作为字符串s的初始值
string s(sctr,char_len) 以C_string类型的cstr的前char_len个字符作为字符串s的初始值
string s(num,c) 将num个c字符作为s的初始值
string s(s1.begin()+1,s1.begin()+6) 将区间s1[1] -s1[6]之间的字符作为字符串s的初始值

析构函数

~string()   //销毁所有内存,释放内存

C_string与string的转换

C_string一般被认为是常规的C++字符串。

在C++中,从const char *到string转换时,存在一个隐式型别转换,却不存在能从string转换为C_string的隐式型别转换,可以通过c_str()函数返回string类对象对应的C_string。

因此,在编写程序时,整段程序都应坚持使用string类对象,直到需要将类型转换为char *时才将其转换为C_string。

标签:string,与析构,s1,初始值,char,字符串,构造函数
From: https://www.cnblogs.com/csclixuan/p/17765564.html

相关文章

  • CF1204D2 Kirk and a Binary String (hard version) 题解
    CF1204D2KirkandaBinaryString(hardversion)题解分析先来分析\(01\)串的最长不下降子序列。全是\(0\)显然是不下降的,如果中间出现一个\(1\),为了维护不下降的性质,后面就只能全是\(1\)。一句话概括一下,\(0\)后面能跟\(0,1\),\(1\)后面只能跟\(1\)。现在来分析这......
  • Test class should have exactly one public zero-argument constructor(测试类应该只
    在练习重写equals方法时写测试方法遇到这个问题先放报错代码:publicclassOrder{intorderId;StringorderName;publicintgetOrderId(){returnorderId;}publicvoidsetOrderId(intorderId){this.orderId=orderId;}......
  • G. Anya and the Mysterious String
    G.AnyaandtheMysteriousStringAnyareceivedastring$s$oflength$n$broughtfromRome.Thestring$s$consistsoflowercaseLatinlettersandatfirstglancedoesnotraiseanysuspicions.Aninstructionwasattachedtothestring.Startoftheins......
  • string用法合集
    \(string\)用法:使用索引访问:strings="123123123";则\(s[0]=1,s[1]=2\cdots\)。可以直接用运算符比较:strings1="asd";strings2="dsa";returns1<s2;//按字典序来,结果应该返回的是true字符串排序:strings="1b3rdc871yvbv";so......
  • C. Decreasing String
    C.DecreasingStringRecallthatstring$a$islexicographicallysmallerthanstring$b$if$a$isaprefixof$b$(and$a\neb$),orthereexistsanindex$i$($1\lei\le\min(|a|,|b|)$)suchthat$a_i<b_i$,andforanyindex$j$($1\lej......
  • Codeforces Round 685 (Div. 2) B. Non-Substring Subsequence
    对于一个长为\(n\)的\(01\)字符串\(s\)有\(n\)个询问。第\(i\)个询问被\(l_i,r_i\)描述\(1\leql_i<r_i\leqn\)。对于每个询问,你需要确定\(s\)中是否存在一个子序列等同于子串\(s[l_i\cdotsr_i]\)。显然子序列可以和子串仅有一个字符不相同。于是\(s......
  • CF1886C Decreasing String 题解
    题面\(S_n\)由\(S_{n-1}\)去掉一个字母得到,\(S=S_1+S_2+...+S_n\)给定\(S_1\)求\(S\)的第\(N\)位solution我们先考虑怎样去字母能保持字典序最小显然,我们发现如果一个字母比前面那个字母小,那么我们就要删除前面那个字母也就是我们要删除一些字母,保持剩余的字母单调......
  • @NotBlank注解String字段会报错
    一、背景项目场景:这里说下@NotEmpty、@NotBlank、@NotNull的区别:它们所在的包:javax.validation.constraints.NotEmpty、javax.validation.constraints.NotBlank、javax.validation.constraints.NotNull1.@NotNull适用于基本数据类型(Integer,Long,Double,Date等等),当@NotNull......
  • CF938F Erasing Substrings 题解
    ErasingSubstrings一个神奇的想法是设\(f_{i,j}\)表示在位置\([1,i]\)中,我们删去了长度为\(2^k(k\inj)\)的一些串,所能得到的最小字典序。使用二分加哈希可以做到\(O(n^2\log^2n)\),无法承受。发现对于状态\(f_{i,j}\),它已经确定了\(i-j\)位的串,因为所有\(\inj\)......
  • C# Webapi 简单的依赖注入-构造函数
    控制器部分:usingMicrosoft.AspNetCore.Mvc;usingWebApplication1.IServices;usingWebApplication1.Utility.SwaggerExt;namespaceWebApplication1.Controllers{[ApiController][Route("[controller]")]//指定当前的控制器是哪个Swagger版本的指定给......