Указатель на const char vs char array vs std::string

Здесь у меня две строки кода

const char * s1 = "test";
char s2 [] = "test";

Обе строки кода имеют одинаковое поведение, поэтому я не вижу разницы, следует ли предпочесть s1 вместо s2 или наоборот. Помимо s1 и s2, существует также способ использования std::string. Я думаю, что способ использования std::string является наиболее элегантным. Просматривая другой код, я часто вижу, что люди либо используют const char *, либо char s []. Таким образом, мой вопрос заключается в том, когда мне следует использовать const char * s1 или char s [] или std::string? В чем разница и в каких ситуациях следует использовать тот или иной подход?

9
задан System.Data 22 February 2012 в 10:44
поделиться