rawriter_test.cpp

来自「stl的源码」· C++ 代码 · 共 67 行

CPP
67
字号
#include <algorithm>#include <iterator>#include <memory>#include "cppunit/cppunit_proxy.h"#if !defined (STLPORT) || defined(_STLP_USE_NAMESPACES)using namespace std;#endifclass X{  public:    X(int i_ = 0) : i(i_) {}    ~X() {}    operator int() const { return i; }  private:    int i;};//// TestCase class//class RawriterTest : public CPPUNIT_NS::TestCase{  CPPUNIT_TEST_SUITE(RawriterTest);  CPPUNIT_TEST(rawiter1);  CPPUNIT_TEST_SUITE_END();protected:  void rawiter1();};CPPUNIT_TEST_SUITE_REGISTRATION(RawriterTest);//// tests implementation//void RawriterTest::rawiter1(){  allocator<X> a;  typedef X* x_pointer;  x_pointer save_p, p;  p = a.allocate(5);  save_p=p;  raw_storage_iterator<X*, X> r(p);  int i;  for(i = 0; i < 5; i++)    *r++ = X(i);  CPPUNIT_ASSERT(*p++ == 0);  CPPUNIT_ASSERT(*p++ == 1);  CPPUNIT_ASSERT(*p++ == 2);  CPPUNIT_ASSERT(*p++ == 3);  CPPUNIT_ASSERT(*p++ == 4);//#if defined (STLPORT) || defined (__GNUC__)  a.deallocate(save_p, 5);/*#else  a.deallocate(save_p);#endif*/}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?