wctest36.cpp
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C++ 代码 · 共 63 行
CPP
63 行
#include <wclist.h>
#include <wclistit.h>
#include <iostream.h>
class int_ddata : public WCDLink {
public:
inline int_ddata() {};
inline ~int_ddata() {};
inline int_ddata( int datum ) : info( datum ) {};
int info;
};
static void test1( void );
void data_isv_prt( int_ddata * data, void * str ) {
cout << (char *)str << "[" << data->info << "]\n";
}
int main() {
try {
test1();
} catch( ... ) {
cout << "we caught an unexpected exception\n";
}
cout.flush();
return 0;
}
void test1 ( void ) {
WCIsvDList<int_ddata> list;
int_ddata data1(1);
int_ddata data2(2);
int_ddata data3(3);
list.append( &data1 );
list.append( &data2 );
list.append( &data3 );
cout << "<intrusive double list for int_ddata>\n";
list.forAll( data_isv_prt, "" );
WCIsvDListIter<int_ddata> liter(list);
int_ddata * data;
++liter;
cout << "[" << liter.current()->info << "]\n";
++liter;
cout << "[" << liter.current()->info << "]\n";
++liter;
cout << "[" << liter.current()->info << "]\n";
--liter;
cout << "[" << liter.current()->info << "]\n";
++liter;
++liter;
data = liter.current();
if( data != NULL ) {
cout << "say what! -- this should be null\n";
}
list.clear();
cout.flush();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?