что такое строка strName <>? - PullRequest
       32

что такое строка strName <>?

1 голос
/ 23 февраля 2012

Я видел такой код:

struct failed_login_res {
     string errorMsg<>;
     unsigned int error;
};

Что означает <> в конце?Чем оно отличается от обычного объявления вроде string errorMsg?

Исправление: это для заглушки RPC, а не для C ++, и я могу подтвердить, что она компилируется.Тогда вопрос остается в силе.

1 Ответ

2 голосов
/ 23 февраля 2012

Из быстрого поиска в Google я наткнулся на этот PDF .

Раздел 6.9 выглядит следующим образом:

Строки: C не имеет встроенной строкитип, но вместо этого используется термин «char *» с нулевым символом в конце.На языке XDR строки объявляются с использованием ключевого слова «string» и компилируются в «char *» в выходном заголовочном файле.Максимальный размер, содержащийся в угловых скобках, указывает максимально допустимое количество символов в строках (не считая символа NULL).Максимальный размер может быть опущен, указывая строку произвольной длины.

Примеры:

string name<32>; --> char *name;
string longname<>; --> char *longname;
...