45 lines
753 B
C++
45 lines
753 B
C++
#ifndef __ZString_h__
|
|
#define __ZString_h__
|
|
|
|
#include "includes"`
|
|
|
|
namespace coreutils {
|
|
|
|
///
|
|
/// ZString provides a data pointer and a length to basically point to a string
|
|
/// from a common backstore.
|
|
///
|
|
|
|
class ZString {
|
|
|
|
public:
|
|
ZString() {}
|
|
ZString(char *data) {
|
|
this->data = data;
|
|
length = strlen(data);
|
|
}
|
|
|
|
ZString(char *data, size_t length) {
|
|
this->data = data;
|
|
this->length = length;
|
|
}
|
|
|
|
std::string asString() {
|
|
return std::string(data, length);
|
|
}
|
|
|
|
void setString(char *data, size_t length) {
|
|
this->data = data;
|
|
this->length = length;
|
|
}
|
|
|
|
private:
|
|
char *data;
|
|
size_t length;
|
|
|
|
};
|
|
|
|
|
|
}
|
|
|
|
#endif |