C++ Templates中的例子编译不过的原因

简介:
 此例子来源于《C++Templates The Complete Guide》, 
使用了两种编译器(gcc 3.4.4, Dev-C++ 4.9.9.2),都出现如下错误: 

C++ Templates中的functor源代码。编译其中的一个cpp文件(compose6.cpp)即可。 
下载地址: 
[url]http://www.josuttis.com/tmplbook/examples.zip[/url]

编译错误:
dell@dell
- PC  / cygdrive / g / cyghome / src / cpptemplates / functors $ make g ++ .exe  compose6.cpp  - o test.exe
In file included from forwardparam.hpp:
15 ,
                 from functionptr.hpp:
11 ,
                 from funcptr.hpp:
11 ,
                 from compose6.cpp:
12 :
typet.hpp:
73 : error: expected primary - expression before  ' > '  token
typet.hpp: In instantiation of `IsFunctionT
< double > ' :
typet.hpp: 105 :   instantiated from `CompoundT < double > '
typet.hpp: 290 :   instantiated from `TypeT < double > '
forwardparam.hpp: 29 :   instantiated from `ForwardParamT < double > '
functionptr.hpp: 39 :   instantiated from `FunctionPtr < double double double , voi
d
> '
compose6.cpp: 29 :   instantiated from here
typet.hpp:
73 : error: enumerator value  for  `Yes '  not integer constant
make:  ***  [test.exe] Error  1
 
解决方法:去掉IsFunctionT<T>::
InBlock.gif //enum { Yes = sizeof(IsFunctionT<T>::test<T>(0)) == 1 };  
  //error: expected primary-expression before '>' token
InBlock.gif     enum { Yes = sizeof(test<T>(0)) == 1 };
InBlock.gif












本文转sinojelly51CTO博客,原文链接:http://blog.51cto.com/sinojelly/99368 ,如需转载请自行联系原作者
相关文章
|
29天前
|
安全 编译器 C++
【C++20概念】编译时多态性的力量
【C++20概念】编译时多态性的力量
46 0
|
1月前
|
存储 算法 编译器
探索C++中的模板元编程:一种编译时计算的强大工具
探索C++中的模板元编程:一种编译时计算的强大工具
16 0
|
3月前
|
消息中间件 NoSQL Linux
workFlow c++异步网络库编译教程与简介
搜狗公司C++服务器引擎,编程范式。支撑搜狗几乎所有后端C++在线服务,包括所有搜索服务,云输入法,在线广告等,每日处理数百亿请求。这是一个设计轻盈优雅的企业级程序引擎,可以满足大多数后端与嵌入式开发需求。 编程范式 结构化并发与任务隐藏回调与内存回收机制
53 0
|
3月前
|
关系型数据库 MySQL 开发工具
windows编译poco c++库
windows编译poco c++库
|
27天前
|
算法 编译器 程序员
深入理解C++编译模式:了解Debug和Release的区别
深入理解C++编译模式:了解Debug和Release的区别
61 2
|
29天前
|
算法 编译器 C++
【C++ 泛型编程 中级篇】C++ 编译时技术:探索 if constexpr 和 std::enable_if
【C++ 泛型编程 中级篇】C++ 编译时技术:探索 if constexpr 和 std::enable_if
39 0
|
29天前
|
安全 算法 编译器
【C++ 静态断言的技巧】掌握C++中static_assert的力量:深入探讨编译时检查
【C++ 静态断言的技巧】掌握C++中static_assert的力量:深入探讨编译时检查
42 1
|
29天前
|
存储 算法 编译器
【C++ 关键字 static_assert 相关问题】C++ 关于静态断言的编译问题 ,深入了解静态断言
【C++ 关键字 static_assert 相关问题】C++ 关于静态断言的编译问题 ,深入了解静态断言
28 0
|
1月前
|
编解码 算法 程序员
【C++ 泛型编程 高级篇】 C++ 14 模版元编程 遍历元组 编译期生成整数序列 std::index_sequence和std::make_index_sequence 使用指南(三)
【C++ 泛型编程 高级篇】 C++ 14 模版元编程 遍历元组 编译期生成整数序列 std::index_sequence和std::make_index_sequence 使用指南
27 0
|
1月前
|
C++ 索引
【C++ 泛型编程 高级篇】 C++ 14 模版元编程 遍历元组 编译期生成整数序列 std::index_sequence和std::make_index_sequence 使用指南(二)
【C++ 泛型编程 高级篇】 C++ 14 模版元编程 遍历元组 编译期生成整数序列 std::index_sequence和std::make_index_sequence 使用指南
26 0

热门文章

最新文章