Para facilitar la programación y hacerla más natural al programador, se introducen ciertos operadores sobrecargados, que normalmente tienen una función equivalente.
Algunos de los más importantes son:
|| Operador || Descripción ||
|| =
|| Asigna el valor de la izquierda (lvalue) al contenido del objeto CString. ||
|| +
|| Concatena el valor de dos objetos CString, o cualquier combinación entre CString, LPTCSTR y TCHAR. ||
|| +=
|| Concatena el valor de la izquierda (CString, LPCTSTR o TCHAR) al contenido del objeto CString. ||
||
, <, <=, >, >=, !=
|| Compara el valor de la izquierda con el contenido del objeto CString. Es equivalente a comparar utilizando las funciones Compare() o Collate(). ||
|| []
|| Accede a cada uno de los caracteres del contenido del objeto CString, comenzando por el índice 0. Es equivalente a la función miembro GetAt(x) ||
|| <<, >>
|| Implementa los operadores de serialización propios del objeto CObject, leyendo o grabando los datos del CString en un objeto de tipo CArchive. ||
|| LPCTSTR
|| Retorna un puntero al buffer interno de caracteres. No será posible modifcar este puntero, ya que es un puntero constante. ||