C 中有typeof这个东西吗?在哪个头文件里

[复制链接]
查看11 | 回复1 | 2011-3-19 12:58:42 | 显示全部楼层 |阅读模式
回复

使用道具 举报

千问 | 2011-3-19 12:58:42 | 显示全部楼层
<pre id=\"best-answer-content\" class=\"reply-text mb10\">以下是它列出的用法:

a、取表达式的值的类型:

template class A, class B
function operator*(A a, B b) - typeof(a*b); // return type last
// big change: function keyword
// : and return are obvious alternatives for -
template class A, class B
typeof(a*b) operator* (A a, B b) ; // “lookahead parsing” typeof(a*b)并不真的计算a*b的值,而是获得计算的结果类型。

b、取表达式的类型:

template class A, class B typeof(A*B) operator*(A a, B b); // use typenames// not generaltemplate class A, class B typeof((*(A*)0)*(*(B*)0)) operator*(A a, B b); // hack 目前好像只有gcc编译器支持这个关键字。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行