⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cpp24.cpp

📁 C++参考书
💻 CPP
字号:
	
// Coded by plusir -- Jan.04.2003.
// Standard C++ Bible -- (P327-11-24)

#include <iostream>
using namespace std ;

class ListEntry
{
	public:
		ListEntry( char * ) ;
		~ListEntry( void ) ;
		ListEntry* renNextEntry( void ) const ;
		void display( void ) const ;

		static ListEntry *firstEntry ;

	private:
		static ListEntry *lastEntry ;
		ListEntry* nextEntry ;
		char *listValue ;
} ;

ListEntry::ListEntry( char *s )
{
	if ( firstEntry == NULL )
		firstEntry = this ;

	if ( lastEntry != 0 )
		lastEntry->nextEntry = this ;

	lastEntry = this ;
	listValue = new char[strlen( s ) + 1] ;
	strcpy( listValue, s ) ;
	nextEntry = NULL ;
}

ListEntry::~ListEntry( void )
{
	delete [] listValue ;
}

ListEntry* ListEntry::renNextEntry( void ) const
{
	return nextEntry ;
}

void ListEntry::display( void ) const
{
	cout << listValue <<  endl ;
}

ListEntry* ListEntry::firstEntry = NULL ;
ListEntry* ListEntry::lastEntry = NULL ;

int main()
{
	while ( true ) {

		cout << "\nEnter a name( \"end\" when done ): " ;
		char name[25] ;
		cin >> name ;

		if ( strncmp( name, "end", 3 ) == 0 )
			break ;

		new ListEntry( name ) ;
	}

	ListEntry *next = ListEntry::firstEntry ;

	while ( next != NULL ) {
		next->display() ;
		ListEntry *hold = next ;
		next = next->renNextEntry() ;
		delete hold ;
	}

	return 0 ;
}

⌨️ 快捷键说明

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