查看单个帖子
  #10 (permalink)  
旧 2008-02-03
Dd 的头像
Dd Dd 当前离线
普通会员
 
注册日期: 2002-10-16
住址: 上海
帖子: 49
Dd 正向着好的方向发展
发送 MSN 消息给 Dd
默认 回复: 基于模板参数类型的“字面常量选择”

Elminster:正解!和我现在的做法基本一致,就连名字(selector)都很像

bankrock:可行,但会丢失类型信息。

liuxinyu:谢谢回答。

那么,现在解决了char/wchar_t字面常量问题,那么再加大点难度吧。同样的问题如何处理“字面常量字符串”呢?例如,对于以下代码中的“字面字符串”:

代码:
characterData(void *userData, const XML_Char *s, int len) { FILE *fp = (FILE *)userData; for (; len > 0; --len, ++s) { switch (*s) { case T('&'): fputts(T("&amp;"), fp); break; case T('<'): fputts(T("&lt;"), fp); break; case T('>'): fputts(T("&gt;"), fp); break; #ifdef W3C14N case 13: fputts(T("&#xD;"), fp); break; #else case T('"'): fputts(T("&quot;"), fp); break; case 9: case 10: case 13: ftprintf(fp, T("&#%d;"), *s); break; #endif default: puttc(*s, fp); break; } } }
回复时引用此帖