我試圖將std::string
變量轉換爲FixedString
。我真的不明白如何處理這個問題。該代碼已經過測試並可正常工作。我只是不知道將變量std::string test
轉換爲FixedString text
。如何從字符串(C++)填充FixedString?
#include <iostream>
using namespace std;
static const int MAX_KEY_LEN = 16;
class FixedString
{
public:
char charStr[MAX_KEY_LEN];
bool operator< (const FixedString& fixedString) const {
return std::lexicographical_compare(charStr, charStr + MAX_KEY_LEN,
fixedString.charStr, fixedString.charStr +MAX_KEY_LEN);
}
bool operator==(const FixedString& fixedString) const {
return std::equal(charStr, charStr+MAX_KEY_LEN, fixedString.charStr);
}
bool operator!=(const FixedString& fixedString) const {
return !std::equal(charStr, charStr+MAX_KEY_LEN, fixedString.charStr);
}
};
struct comp_type : public std::less<FixedString>
{
static FixedString max_value()
{
FixedString s;
std::fill(s.charStr, s.charStr+MAX_KEY_LEN, 0x7f);
return s;
}
};
int main(int argc, char* argv[])
{
FixedString s;
string test = "hello";
//how to convert string test to FixedString test???
return 0;
}
謝謝。
你可以用'的strcpy()'和'的std :: string :: c_str()'。請特別指出你的問題?你介意改善你的問題嗎? –