首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bjam表现得很奇怪?

bjam表现得很奇怪?
EN

Stack Overflow用户
提问于 2012-06-24 23:54:34
回答 1查看 34关注 0票数 1

我认为这段代码的输出应该是

代码语言:javascript
复制
Hello World 1
Hello World 2 3

但我得到了

代码语言:javascript
复制
Hello World 1
Hello World 2 Hello World 3

下面是jam代码

代码语言:javascript
复制
rule weird ( a : b + : c * : d ? )
{
  echo "Hello World $(a)" ;
  echo "Hello World $(b)" ;
}

weird 1 : 2 3 ;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-25 11:47:15

Jam的变量扩展规则与其他语言非常不同。从boost jam documentation

变量展开后的token的结果是token的组件的乘积,其中每个组件都是文字子字符串或替换变量引用的列表。

因此jam将"Hello World $(b)“扩展为"Hello World $(b1)”"Hello World$(b2)“并与之呼应。

如果需要"Hello World 2 3",则需要将echo参数拆分为两个标记

代码语言:javascript
复制
echo "Hello World" $(b) ;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11178863

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档