假设我有一个 char 数组:Char[3],其中包含 a、b、c。
在不使用任何 c++ 字符串库的情况下将 Char 打印为“abc”的最简单方法是什么。
我正在尝试重载 << 运算符,以便我可以将包含 char 数组的类 obj 打印回作为创建 obj 的原始字符串。
我对如何实施所提供的解决方案感到困惑。
我的词 objs 可以这样使用:
Word.length() 返回多长时间 Word[XXX] 将返回索引 XXX 处的内容
假设我有一个 char 数组:Char[3],其中包含 a、b、c。
在不使用任何 c++ 字符串库的情况下将 Char 打印为“abc”的最简单方法是什么。
我正在尝试重载 << 运算符,以便我可以将包含 char 数组的类 obj 打印回作为创建 obj 的原始字符串。
我对如何实施所提供的解决方案感到困惑。
我的词 objs 可以这样使用:
Word.length() 返回多长时间 Word[XXX] 将返回索引 XXX 处的内容
尝试copy
:
#include <algorithm>
#include <iterator>
#include <iostream>
char data[3] = { 'a', 'b', 'c' };
std::copy(data, data + sizeof data, std::ostream_iterator<char>(std::cout));
class OverloadedCharArrayClass {
public:
char* chars;
friend ostream& operator<<(ostream& os, const OverloadedCharArrayClass& charArray){
int i=0;
while(charArray.chars[i]!='\0'){
os<<charArray.chars[i];
i++;
}
return os;
}
}