嵌套注释语法思考

主流的C/C++/Java/C#等语言,都将注释语法设计成不可嵌套的。
如: /* xxx /* yyy */ zzz */ 是非法的。
理由是注释是用于写描述性语言的,嵌套会使得可读性更差。
但实际上,注释不只是用来写注释标注,还通常用于屏蔽代码块。
所以在C/C++中,大家经常用#if(0)预编译指令进行代码块注释。
而CommonTemplate( http://www.commontemplate.org)作为一个模板语言,以方便使用为目标。
所以考虑是否应提供可嵌套的注释。
是将现有的注释方式改成可嵌套,还是增加可嵌套注释语法?
如可以考虑增加语法:
$-*
......
*-$
以区别于现有的:
$*
......
*$
不管使用哪种方案,转义符都是首先应该提供的,
如:$* xxx $* yyy \*$ zzz *$
如果允许嵌套注释则起始符也应转义,
如:$* xxx \$* yyy \*$ zzz *$

你可能感兴趣的:(C++,c,C#,commontemplate)