【发布时间】:2012-04-18 22:51:26
【问题描述】:
我正在尝试做一些非常简单的事情,但是,经过一个小时的搜索,我找不到合适的答案,所以我一定错过了一些相当明显的东西。
我正在尝试动态创建用于 ifstream 的文件名。虽然我知道有多种方法可以做到这一点,但我决定创建一个 std::string,并使用 stringname.c_str 转换为 const。
然而,问题是我需要使用混合变量和预定义文本值来创建字符串。我遇到了编译器错误,所以这一定是语法问题。
伪
std::string var = "sometext" + somevar + "sometext" + somevar;
谢谢!
【问题讨论】:
-
如果是语法错误,您应该发布实际代码,然后我们可以告诉您语法错误是什么(以及为什么它是错误的),并且您会比我们只给您正确的语法学到更多.
-
std::string var = std::string("sometext") + somevar + "sometext" + somevar; -
作为@yury's solution shows you can also use printf style API 和
boost::format。