繁体   English   中英

用于编译时字符串文字串联的c ++替代宏

[英]c++ alternative to macro for compile-time string literal concatenation

我想在编译时连接一些字符串文字:

#include <iostream>

#define VAR0 "var0 text"
#define VAR1 "var1 text"
#define VAR2 "var2 text"

static const char* concat = "var0:" VAR0 " var1:" VAR1 " var2:" VAR2 ;

int main(int argc, char *argv[])
{
    std::cout << concat << std::endl;
    return(0);
}

这一切都很好,但我宁愿使用常量表达式而不是宏。 在C ++ 03中有没有简单的方法呢?

它只能连接文字 在C ++ 03中无法连接泛型常量char数组表达式。 但是,可以从Boost.MPL连接奇怪的模板可憎的boost::mpl::string

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM