stdstring相关内容
我已经扩展了std :: string,以满足我将自定义函数编译到 CustomString 字符串类中的需要 定义的构造函数: class CustomString:public std :: string { public: 显式CustomString(void); explicit CustomString(const std :: string& str); ex
..
我正在使用一个低级API接受 char * 和数字值来分别表示一个字符串及其长度。我的代码使用 std :: basic_string 并调用这些方法与适当的翻译。不幸的是,许多这些方法接受不同大小的字符串长度(即max( unsigned char ),max( short ) ,etc ...),我坚持写代码,以确保我的字符串实例不超过低级API规定的最大长度。 通过默认情况下, std
..
我正在使用一个在C ++中实现的开源UNIX工具,我需要更改一些代码来让它做我想要的。我想做最小的可能的变化,希望我的补丁接受上游。首选可在标准C ++中实现并且不创建更多外部依赖性的解决方案。 这是我的问题。我有一个C ++类 - 让我们称之为“A” - 目前使用fprintf()打印其格式严重的数据结构到文件指针。在它的打印函数中,它也递归地调用几个成员类的相同定义的打印函数(“B”是一
..
int i = 4; string text =“Player”; cout
..
我注意到,在我的SGI STL参考的副本中,有一个关于字符特征的页面,但我不能看到这些是如何使用的?它们是否替换string.h函数?它们似乎不被 std :: string 使用,例如。在 std :: string 上的 length()方法不使用字符特征 length()方法。为什么字符特征存在,它们是否在实践中使用? 解决方案 字符特征是流和字符串中非常重要的组成部分因为它们允许流
..
我使用 std :: string ,需要将它们左移到给定的宽度。在C ++中推荐的方法是什么? 输入示例: 123 填入10个字符。 示例输出: 123 (7个空格,123之前) 解决方案 std :: setw(setwidth)manipulator std :: cout
..
有没有反正读取已知数量的字节,直接到std :: string,而不创建一个临时缓冲区这样做? 例如, do it by boost :: uint16_t len; is.read((char *)& len,2); char * tmpStr = new char [len]; is.read(tmpStr,len); std :: string str(tmpS
..
我知道这是一个常见的问题,但寻找引用和其他材料我没有找到一个清楚的答案这个问题。 考虑下面的代码: #include // ... //在方法中 std :: string a =“Hello”; std :: string b =“World”; std :: string c = a + b; 编译器告诉我它找不到 cha
..
我需要使用 std :: string 来存储由 fgets()检索的数据。为此,我需要将 fgets()char * 输出转换为 std :: string 。如何做到这一点? 解决方案 std :: string 构造函数为: const char * s =“Hello,World! std :: string str(s); 只要确保您的 char *
..
是std :: string size()a O(1)操作吗? 我使用的STL的实现是在VC ++中构建的 解决方案 如果你问MSVC的string :: stize()的实现是否有复杂性,那么答案是肯定的。但是 Don Wakefield 提到了C ++标准23.1中的表65,说, size()的复杂性应该遵循'Note A'中的说法。注意A说: 标记为“'(注释A)'的条目
..
在文件顶部有 #define AGE“42” 后来在文件中我多次使用ID,包括一些看起来像的行 1 std :: string name =“Obama”; 2 std :: string str =“Hello”+ name +“you are”+ AGE +“years old! 3 str + =“你觉得”+ AGE +“岁吗? 我
..
问题:我有一个整数;此整数需要转换为stl :: string类型。 在过去,我使用 stringstream 进行转换,这只是一种繁琐。我知道C方法是做一个 sprintf ,但我宁愿做一个类型安全(er)的C ++方法。 有更好的方法吗? 以下是我过去使用的stringstream方法: std :: string intToString(int i) { std
..
我在寻找最优雅的方式来将一个字符串的向量引入一个字符串。下面是我现在使用的解决方案: static std :: string& implode(const std :: vector& elems,char delim,std :: string& s) { for(std :: vector
..
以下C ++代码格式正确: void consumer(char const * p) { std :: printf(“%s”,p); } std :: string random_string_generator() { //返回一个随机的std :: string对象 } consumer(random_string_generator()。c_str())
..
有没有方法? 我的电脑是AMD64, :: std :: string str; BOOL loadU(const wchar_t * lpszPathName,int flag = 0); : loadU(& str); VS2005编译器说: 错误7错误C2664 ::不能将参数1从' std :: string * __ w64'
..
这不是一个设计问题,真的,虽然它可能看起来像。 (好吧,好吧,这是一个设计问题)。我想知道的是为什么C ++ std :: fstream 类不采取 std :: string 它们的构造函数或开放方法。每个人都喜欢代码示例,因此: #include #include int main() {
..
CString 非常方便,而 std :: string 与STL容器更兼容。 我使用 hash_map 。但是, hash_map 不支持 CString 作为键,所以我想转换 CString 到 std :: string 。 编写 CString 散列函数似乎需要很多时间。 CString -----> std :: string 我该如何做? s
..
当使用gcc 4和 -std = c ++ 0x 时, std :: string -std = c ++ 11 ? 解决方案 href =“http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01016_source.html#l00114”> libstdc ++文档我找到了(更多信息,请参阅链接): 字符串如下所示:
..
可能重复: 如何将C ++字符串转换为int? 假设你期望字符串中有实际数字例如,“1”,“345”,“38944”)。 此外,假设你没有boost,你真的想做C ++方式,而不是重要的旧C方式。 解决方案 #include>结果;
..
如果我想构造一个带有如下行的std :: string: std :: string my_string \0b“); 我想在结果字符串(a,null,b)中有三个字符,得到一个。正确的语法是什么? 解决方案 问题是 std :: string 构造函数,它接受一个 const char * 假设输入是一个C字符串。 C字符串 \0 终止,因此解析在到达 \0 字
..