NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
NXString.hxx
1/*******************************************************************************
2 Copyright (c) 2022 Siemens
3 Unpublished - All Rights Reserved
4*******************************************************************************/
5#pragma once
6#include <stddef.h>
7#include <string>
8#include <NXOpen/libnxopencpp_exports.hxx>
9namespace NXOpen
10{
12 class NXOPENCPPEXPORT NXString
13 {
14 public:
17 NXString() : native_text(NULL), utf8_text(NULL), mode(Locale)
18 {
19 }
24 NXString(const char* text, NXStringMode mode = Locale); //lint !e1931
30 NXString(const std::string& text, NXStringMode mode = Locale); //lint !e1931
33 NXString(const NXString& other);
35 NXString& operator= (const NXString& other);
44 const char* GetText() const;
46 const char* GetLocaleText() const;
48 const char* GetUTF8Text() const;
51 friend NXOPENCPPEXPORT NXString operator + (const NXString& a, const char* b);
54 friend NXOPENCPPEXPORT NXString operator + (const char* a, const NXString& b);
57 NXString& operator += (const char* s);
61 NXString& operator += (const NXString& s);
62 private:
63 mutable char* native_text;
64 mutable void* utf8_text;
65 NXStringMode mode;
66 };
67
69 extern NXOPENCPPEXPORT NXString operator + (const NXString& a, const NXString& b);
70}