Вы не можете объединить два или более строковых литералов, ожидающих получить один строковый литерал (если вы не хотите использовать макросы). Но в зависимости от поставленной задачи вы можете вернуть функцию-шаблон, например, std :: string, которая представляет собой конкатенацию строковых литералов. Последнее тривиально.

аюсь определить некоторый шаблон variadic как это:

typedef const char CCTYPE[];
template<CCTYPE X, CCTYPE... P> struct StringConcat { ... };

чтобы я мог написать что-то вроде:

char foo[] = "foo"; char bar[] = "bar";
std::cout << StringConcat<foo, bar>;

и это напечатаноfoobar, Как я могу это сделать, если это возможно в C ++ 0x?

мой реальный интерес - решитьFizzBuzz проблема с использованием шаблонов c ++, я нашел решениеВот конвертировать int в char [], используя шаблоны.

Ответы на вопрос(5)

Ваш ответ на вопрос