Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
A biblioteca Microsoft Foundation Classes (MFC) e a Active Template Library (ATL) continuam a ser suportadas. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.
Esta classe representa um objeto string com um buffer de caracteres fixo.
Sintaxe
template<class StringType, int t_nChars>
class CFixedStringT : private CFixedStringMgr, public StringType
Parâmetros
StringType
Usado como classe base para o objeto string fixo e pode ser de qualquer CStringTtipo baseado em . Alguns exemplos incluem CString, CStringA, e CStringW.
t_nChars
O número de caracteres armazenados no buffer.
Membros
Construtores Públicos
| Nome | Description |
|---|---|
| CFixedStringT::CFixedStringT | O construtor para o objeto string. |
Operadores Públicos
| Nome | Description |
|---|---|
| CFixedStringT::operator = | Atribui um novo valor a um CFixedStringT objeto. |
Observações
Esta classe é um exemplo de uma classe de strings personalizada baseada em CStringT. Embora semelhantes, as duas classes diferem na implementação. As principais diferenças entre CFixedStringT e CStringT são:
O buffer inicial de caracteres é alocado como parte do objeto e tem o tamanho t_nChars. Isto permite que o
CFixedStringobjeto ocupe um bloco de memória contíguo para fins de desempenho. No entanto, se o conteúdo de umCFixedStringTobjeto crescer para além de t_nChars, o buffer é alocado dinamicamente.O buffer de carácter de um
CFixedStringTobjeto tem sempre o mesmo comprimento ( t_nChars). Não há limitação no tamanho do buffer paraCStringTos objetos.O gestor de memória para
CFixedStringTé personalizado de modo a que a partilha de um objeto CStringData entre dois ou maisCFixedStringTobjetos não seja permitida.CStringTOs objetos não têm essa limitação.
Para mais informações sobre a personalização e CFixedStringT gestão de memória para objetos de cadeia em geral, consulte Gestão de Memória e CStringT.
Hierarquia de herança
IAtlStringMgr
StringType
CFixedStringMgr
CFixedStringT
Requerimentos
Cabeçalho: cstringt.h
CFixedStringT::CFixedStringT
Constrói um CFixedStringT objeto.
CFixedStringT() throw();
explicit CFixedStringT(IAtlStringMgr* pStringMgr) throw();
CFixedStringT(const CFixedStringT<StringType, t_nChars>& strSrc);
CFixedStringT(const StringType& strSrc);
CFixedStringT(const StringType::XCHAR* pszSrc);
explicit CFixedStringT(const StringType::YCHAR* pszSrc);
explicit CFixedStringT(const unsigned char* pszSrc);
Parâmetros
pszSrc
Uma cadeia terminada por nulo a ser copiada para este CFixedStringT objeto.
strSrc
Um objeto existente CFixedStringT a ser copiado para este CFixedStringT objeto.
pStringMgr
Um apontador para o gestor de memória do CFixedStringT objeto. Para mais informações sobre IAtlStringMgr e gestão de memória para CFixedStringT, veja Gestão de Memória e CStringT.
Observações
Como os construtores copiam os dados de entrada para um novo armazenamento alocado, deve estar ciente de que podem resultar exceções de memória. Alguns destes construtores atuam como funções de conversão.
CFixedStringT::operator =
Reinicializa um objeto existente CFixedStringT com novos dados.
CFixedStringT<StringType, t_nChars>& operator=(
const CFixedStringT<StringType, t_nChars>& strSrc);
CFixedStringT<StringType, t_nChars>& operator=(const char* pszSrc);
CFixedStringT<StringType, t_nChars>& operator=(const wchar_t* pszSrc);
CFixedStringT<StringType, t_nChars>& operator=(const unsigned char* pszSrc);
CFixedStringT<StringType, t_nChars>& operator=(const StringType& strSrc);
Parâmetros
pszSrc
Uma cadeia terminada por nulo a ser copiada para este CFixedStringT objeto.
strSrc
Um existente CFixedStringT para ser copiado neste CFixedStringT objeto.
Observações
Deve estar ciente de que exceções de memória podem ocorrer sempre que utiliza o operador de atribuição porque é frequentemente atribuído novo armazenamento para armazenar o objeto resultante CFixedStringT .
Consulte também
Classe CStringT
Gráfico de Hierarquia
Classes compartilhadas ATL/MFC