我可以使用-gnu 0x标记成功编译eclipse cdt中的c 0x功能.虽然成功编译,编辑器似乎不知道c 0x,也就是说我的代码中显示了任何c 0x特性的错误.我通过将-gnu 0x标志添加到我的项目发现选项来解决.注意:在您执行其他编译并重建索引之前不会显示固定…
-E -P -v -dD “${plugin_state_location}/specs.cpp” -std=gnu++0x
我还有一个编辑器错误,我无法摆脱“符号”duration_cast’无法解决“(我有一个图片,但新用户不能发布图片)
任何人有什么想法如何解决这个问题?这是代码:
#ifndef _scoped_timer_h_#define _scoped_timer_h_#include <iostream>#include <chrono>#include "boost/noncopyable.hpp"#include "boost/format.hpp"using namespace std::chrono; // Utility class for timing and logging rates// (IE "things-per-second").// NB _any_ destructor invokation (including early return// from a function or exception throw) will trigger an// output which will assume that whatever is being measured// has completed successfully and fully.class scoped_timer : boost::noncopyable{public: scoped_timer( const std::string& what,const std::string& units,double n ) :_what(what),_units(units),_how_many(n),_start(high_resolution_clock::Now()) {} ~scoped_timer() { high_resolution_clock::time_point stop = high_resolution_clock::Now(); const double t = 1e-9 * duration_cast<nanoseconds>(stop-_start).count(); std::cout << ( boost::format( "%1%: %|2$-5.3g| %|3$|/s (%|4$-5.3g|s)" ) % _what % (_how_many/t) % _units % t ) << std::endl; }private: const std::string _what; const std::string _units; const double _how_many; const high_resolution_clock::time_point _start;};#endif解决方法 对于eclipse中的计时器,您应该添加这些符号
_GliBCXX_USE_C99_STDINT_TR1
和
__cplusplus = 201103L
如何添加它们:
投影属性 – > C/C++一般 – >路径和符号 – >符号(Tab) – > GNU C – >并点击添加.
记得添加__cplusplus值为201103L
总结以上是内存溢出为你收集整理的c 0x编译,但eclipse编辑器错误即使使用-gnu 0x发现全部内容,希望文章能够帮你解决c 0x编译,但eclipse编辑器错误即使使用-gnu 0x发现所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)