当前位置: 首页>>代码示例>>C++>>正文


C++ DLList::getSize方法代码示例

本文整理汇总了C++中DLList::getSize方法的典型用法代码示例。如果您正苦于以下问题:C++ DLList::getSize方法的具体用法?C++ DLList::getSize怎么用?C++ DLList::getSize使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在DLList的用法示例。


在下文中一共展示了DLList::getSize方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: unittest2

void unittest2 ()
{
	cout << "\nSTARTING UNIT TEST\n\n";
	
	DLList list;
	
	try {
		evaluate(list.getSize() == 0);
		cout << "Passed TEST 1: default constructor (size) \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 1: default constructor (size) #\n";
	}
	
	try {
		evaluate(list.toString() == "");
		cout << "Passed TEST 2: toString \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 2: toString #\n";
	}
	
	list.insert(10);
	try {
		evaluate(list.getSize() == 1 && list.toString() == "10");
		cout << "Passed TEST 3: insert(10)/getSize/toString \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 3: insert(10)/getSize/toString #\n";
	}
	
	list.insert(50);
	try {
		evaluate(list.getSize() == 2 && list.toString() == "10,50");
		cout << "Passed TEST 4: insert(50)/getSize/toString \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 4: insert(50)/getSize/toString #\n";
	}
	
	list.insert(30);
	try {
		evaluate(list.getSize() == 3 && list.toString() == "10,30,50");
		cout << "Passed TEST 5: insert(30)/getSize/toString \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 5: insert(30)/getSize/toString #\n";
	}
	
	list.insert(5);
	try {
		evaluate(list.getSize() == 4 && list.toString() == "5,10,30,50");
		cout << "Passed TEST 6: insert(5)/getSize/toString \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 6: insert(5)/getSize/toString #\n";
	}
	
	list.insert(55);
	try {
		evaluate(list.getSize() == 5 && list.toString() == "5,10,30,50,55");
		cout << "Passed TEST 7: insert(55)/getSize/toString \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 7: insert(55)/getSize/toString #\n";
	}
	
	list.insert(20);
	try {
		evaluate(list.getSize() == 6 && list.toString() == "5,10,20,30,50,55");
		cout << "Passed TEST 8: insert(20)/getSize/toString \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 8: insert(20)/getSize/toString #\n";
	}
	
	list.insert(40);
	try {
		evaluate(list.getSize() == 7 && list.toString() == "5,10,20,30,40,50,55");
		cout << "Passed TEST 9: insert(40)/getSize/toString \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 9: insert(40)/getSize/toString #\n";
	}
	
	list.insert(30);
	try {
		evaluate(list.getSize() == 8 && list.toString() == "5,10,20,30,30,40,50,55");
		cout << "Passed TEST 10: insert(30)/getSize/toString \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 10: insert(30)/getSize/toString #\n";
	}
	
	list.insert(5);
	try {
		evaluate(list.getSize() == 9 && list.toString() == "5,5,10,20,30,30,40,50,55");
		cout << "Passed TEST 11: insert(5)/getSize/toString \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 11: insert(5)/getSize/toString #\n";
	}
	
	try {
		evaluate(list.removeFirst(1) == false);
		cout << "Passed TEST 12: removeFirst(1) \n";
	} catch (MyException e) {
		cout << "# FAILED TEST 12: removeFirst(1) #\n";
	}
	
	try {
//.........这里部分代码省略.........
开发者ID:CodeManiak,项目名称:dllist,代码行数:101,代码来源:unittest.cpp

示例2: processFile


//.........这里部分代码省略.........
                                
                                //output success to the console
                                cout << "VALUE " << list->getFront() << " AT HEAD" << endl;
                                
                            //if the attempt is unsuccessful (head is NULL)
                            } catch (string err) {
                                
                                //output failure to the console
                                cout << err << endl;
                            }
                        break;
                        
                        //if the character is Z
                        case 'Z':
                        
                            //attempt to output the value of the Node at the tail pointer to the console
                            try {
                                
                                //output success to the console
                                cout << "VALUE " << list->getBack() << " AT TAIL" << endl;
                                
                            //if the attempt is unsuccessful (tail is NULL)    
                            } catch (string err) {
                                
                                //output failure to the console
                                cout << err << endl;
                            }
                        break;
                        
                        //if the character is T
                        case 'T':
                        
                            //if the list is empty
                            if (list->getSize() < 1) {
                                
                                //output failure to the console
                                cout << "LIST EMPTY" << endl;
                                
                            } else {
                                
                                //remove the Node at the head pointer and output success to the console
                                list->popFront();
                                cout << "REMOVED HEAD" << endl;
                            }
                        break;
                        
                        //if the character is K
                        case 'K':
                        
                            //if the list is empty
                            if (list->getSize() < 1) {
                                
                                //output failure to the console
                                cout << "LIST EMPTY" << endl;
                                
                            } else {
                                
                                //remove the Node at the tail pointer and output success to the console
                                list->popBack();
                                cout << "REMOVED TAIL" << endl;
                            }
                        break;
                        
                        //if the character is E
                        case 'E':
                        
开发者ID:Svenzor84,项目名称:CSCI-21-FALL-2015,代码行数:66,代码来源:project3.cpp

示例3: unittest

void unittest ()
{
	cout << "\n  STARTING UNIT TEST!!!!!\n\n";
	
	DLList list;
	DLList list1;
	DLList list2;

	try {
		evaluate (list.getFront() == 0);
		cout << "Passed TEST 1: getFront '0' pushFront/getFront";
	} catch (MyException e) {
		cout << "#" << e.message << " TEST 1: getFront";
	}
	cout << endl;
	
	try {
		evaluate (list.getSize() == 0);
		cout << "Passed TEST 2: getSize '0' ";
	} catch (MyException e) {
		cout << "#" << e.message << " TEST 2: getSize";
	}
	cout << endl;
	
	try {
		evaluate (list.getBack() == 0);
		cout << "Passed TEST 3: getBack '0' ";
	} catch (MyException e) {
		cout << "#" << e.message << " TEST 3: getBack";
	}
	
	cout << "\n\n  FINISHED TESTING EMPTY LISTS!!!!!\n\n";
	
	list.pushFront(20);
	list.pushBack(5);
	list1.pushFront(63);
	list1.pushBack(12);
	list2.pushFront(14);
	list2.pushBack(99);	
	list.insert(44);
	list1.insert(87);
	list2.insert(56);
	
	try {
		evaluate (list.getFront() == 20);
		cout << "Passed TEST 4: getFront '20' pushFront/getFront ";
	} catch (MyException e) {
		cout << "#" << e.message << " TEST 4: getFront '20' pushFront/getFront";
	}
	cout << endl;
	
	try {
		evaluate (list1.getFront() == 63);
		cout << "Passed TEST 5: getFront '63' pushFront/getFront";
	} catch (MyException e) {
		cout << "#" << e.message << " TEST 5: getFront '63' pushFront/getFront";
	}
	cout << endl;
	
	cout << list2.getFront() << endl;
	try {
		evaluate (list2.getFront() == 14);
		cout << "Passed TEST 6: getFront '14' pushFront/getFront";
	} catch (MyException e) {
		cout << "#" << e.message << " TEST 6: getFront '14' pushFront/getFront";
	}
	cout << endl;
	
	try {
		evaluate (list.getBack() == 5);
		cout << "Passed TEST 7: getBack '5' pushBack/getBack";
	} catch (MyException e) {
		cout << "#" << e.message << " TEST 7: getBack '5' pushBack/getBack";
	}
	cout << endl;
	
	try {
		evaluate (list1.getBack() == 12);
		cout << "Passed TEST 8: getBack '12' pushBack/getBack";
	} catch (MyException e) {
		cout << "#" << e.message << " TEST 8: getBack '12' pushBack/getBack";
	}
	cout << endl;
	
	try {
		evaluate (list2.getBack() == 99);
		cout << "Passed TEST 9: getBack '99' pushBack/getBack";
	} catch (MyException e) {
		cout << "#" << e.message << " TEST 9: getBack '99' pushBack/getBack";
	}
	cout << endl;
	
	cout << "\n  FINISHED TESTING push/get-Back/Front!!!!!\n\n";
	
	try {
		evaluate (list.get(20) == true);
		cout << "Passed TEST 10: get '20' get(target)";
	} catch (MyException e) {
		cout << "#" << e.message << " TEST 10: get '20' get(target)";
	}
//.........这里部分代码省略.........
开发者ID:CodeManiak,项目名称:dllist,代码行数:101,代码来源:unittest.cpp

示例4: main

int main(int argc, char *argv[])
{
    if(argc <= 1){
        cout << "Error: No command-line argument." << endl;
    }
    else{
        DLList<int> *intList = NULL;
	
    	ifstream fileIn(argv[1]);
    	
    	if(!fileIn.good()){
    	    cout << "Error: File could not be opened." << endl;
    	}
    	else{
    	    string line;
            while(getline(fileIn, line)){
                char operation = line[0];
                
                //cout << operation << " : ";
                
                if(operation == '#'){
                    //cout << "COMMENT" << endl;
                }
                else if(operation == 'C'){
                    cout << "LIST CREATED" << endl;
                    if(intList != NULL){
                        delete intList;
                    }
                    intList = new DLList<int>;
                }
                else if(intList == NULL){
                    cout << "MUST CREATE LIST INSTANCE" << endl;
                }
                else{
                    if(operation == 'X'){
                        cout << "LIST CLEARED" << endl;
                        intList->clear();
                    }
                    else if(operation == 'D'){
                        cout << "LIST DELETED" << endl;
                        delete intList;
                        intList = NULL;
                    }
                    else if(operation == 'A'){
                        try{
                            cout << "VALUE " << intList->getFront() << " AT HEAD" << endl;
                        }
                        catch (string e){
                            cout << e << endl;
                        }
                    }
                    else if(operation == 'Z'){
                        try{
                            cout << "VALUE " << intList->getBack() << " AT TAIL" << endl;
                        }
                        catch (string e){
                            cout << e << endl;
                        }
                    }
                    else if(operation == 'T'){
                        if(intList->getSize() > 0){
                            intList->popFront();
                            cout << "REMOVED HEAD" << endl;
                        }
                        else{
                            cout << "LIST EMPTY" << endl;
                        }
                    }
                    else if(operation == 'K'){
                        if(intList->getSize() > 0){
                            intList->popBack();
                            cout << "REMOVED TAIL" << endl;
                        }
                        else{
                            cout << "LIST EMPTY" << endl;
                        }
                    }
                    else if(operation == 'N'){
                        cout << "LIST SIZE IS " << intList->getSize() << endl;
                    }
                    else if(operation == 'P'){
                        if(intList->getSize() > 0){
                            cout << *intList << endl;
                        }
                        else{
                            cout << "LIST EMPTY" << endl;
                        }
                    }
                    else{
                        string str = line.substr(2);
                        stringstream ss(str);
                        int value = 0;
                        ss >> value;
                        
                        if(operation == 'I'){
                            cout << "VALUE " << value << " INSERTED" << endl;
                            intList->insert(value);
                        }
                        else if(operation == 'F'){
                            cout << "VALUE " << value << " ADDED TO HEAD" << endl;
//.........这里部分代码省略.........
开发者ID:davidsides,项目名称:CSCI-21-SPRING-2014,代码行数:101,代码来源:proj3.cpp

示例5: processFile

void processFile(string filename) {

    ifstream inputstream;
    DLList *list = NULL;
    inputstream.open(filename.c_str());

    if (inputstream.fail()) {
        cout << "Unable to open " << filename << " for processing." << endl;
    } else {
        string nextline;
        while (! inputstream.eof()) {

            stringstream ss;
            int value = 0;
            getline(inputstream, nextline);
            char firstCharacter = nextline[0];

            switch (toupper(firstCharacter)) {
            case 'C':
                if (list != NULL) {
                    delete list;
                }
                list = new DLList;
                cout << "LIST CREATED" << endl;
                break;
            case 'T':
                if (list == NULL) {
                    cout << "MUST CREATE LIST INSTANCE" << endl;
                } else if (list->getSize() > 0) {
                    list->popFront();
                    cout << "REMOVED HEAD" << endl;
                } else {
                    cout << "LIST EMPTY" << endl;
                }
                break;
            case 'I':
                if (list == NULL) {
                    cout << "MUST CREATE LIST INSTANCE" << endl;
                } else {
                    ss.str(nextline.substr(2));
                    ss >> value;
                    list->insert(value);
                    cout << "VALUE " << value << " INSERTED" << endl;
                }
                break;
            case 'P':
                if (list ==  NULL) {
                    cout << "MUST CREATE LIST INSTANCE" << endl;
                } else if (list->getSize() > 0) {
                    cout << (*list) << endl;
                } else {
                    cout << "LIST EMPTY" << endl;
                }
                break;
            case 'X':
                if (list == NULL) {
                    cout << "MUST CREATE LIST INSTANCE" << endl;
                } else {
                    list->clear();
                    cout << "LIST CLEARED" << endl;
                }
                break;
            case 'D':
                if (list == NULL) {
                    cout << "MUST CREATE LIST INSTANCE" << endl;
                } else {
                    delete list;
                    list = NULL;
                    cout << "LIST DELETED" << endl;
                }
                break;
            case 'F':
                if (list == NULL) {
                    cout << "MUST CREATE LIST INSTANCE" << endl;
                } else {
                    ss.str(nextline.substr(2));
                    ss >> value;
                    list->pushFront(value);
                    cout << "VALUE " << value << " ADDED TO HEAD" << endl;
                }
                break;
            case 'B':
                if (list == NULL) {
                    cout << "MUST CREATE LIST INSTANCE" << endl;
                } else {
                    ss.str(nextline.substr(2));
                    ss >> value;
                    list->pushBack(value);
                    cout << "VALUE " << value << " ADDED TO TAIL" << endl;
                }
                break;
            case 'A':
                if (list == NULL) {
                    cout << "MUST CREATE LIST INSTANCE" << endl;
                } else {
                    try {
                        cout << "VALUE " << list->getFront() << " AT HEAD" << endl;
                    } catch (string e) {
                        cout << e << endl;
                    }
//.........这里部分代码省略.........
开发者ID:rkgilbert10,项目名称:CSCI-21-FALL-2015,代码行数:101,代码来源:Driver.cpp

示例6: run_project3

void run_project3(string filename){

	ifstream myfile(filename.c_str());
    
	if (myfile.is_open()){
		string line;
		string charLetter;
		bool doesListExist = false;
		
		DLList* list;
        
		while (getline(myfile,line)){
			
			charLetter = line.at(0);
			line.erase(0,1);
			int newNumber = 0;
			stringstream converter(line);
			converter >> newNumber;
			
			//creating a list.
			if(charLetter == "C"){
				if(doesListExist == false){
					list = new DLList;
				}
				else if (doesListExist == true){
					delete list;
					list = new DLList;
				}
					
				cout << "LIST CREATED" << endl;
				doesListExist = true;
			}
	
	        //clear the list if there is a list.
			if(charLetter == "X" && doesListExist == true){
				list->clear();
				cout << "LIST CLEARED" << endl;
			}
			
			//delete the list if there is a list.
			if(charLetter == "D" && doesListExist == true){
				delete list;
				list = NULL;
				cout << "LIST DELETED" << endl;
				doesListExist = false;
			}
			
			//insert a newNumber into the list if there is list.
			if(charLetter == "I" && doesListExist == true){
				list->insert(newNumber);
				cout << "VALUE " << newNumber << " INSERTED" << endl;
			}
			
			//add a newNumber into the front of the list if there is list.
			if(charLetter == "F" && doesListExist == true){
				list->pushFront(newNumber);
				cout << "VALUE " << newNumber << " ADDED TO HEAD" << endl;
			}
			
			//insert a newNumber into the back of the list if there is list.
			if(charLetter == "B" && doesListExist == true){
				list->pushBack(newNumber);
				cout << "VALUE " << newNumber << " ADDED TO TAIL" << endl;
			}
			
			//get the first element in the list if there is list.
			if(charLetter == "A" && doesListExist == true){
				try{
					btassert<bool>(list->getSize() != 0);
					cout << "VALUE " << list->getFront() << " AT HEAD" << endl;
				}
				catch (bool b){
					cout << "LIST EMPTY" << endl;
				}
			}
			
			//get the last element in the list if there is list.
			if(charLetter == "Z" && doesListExist == true){
				try{
					btassert<bool>(list->getSize() != 0);
					cout << "VALUE " << list->getBack() << " AT TAIL" << endl;
				}
				catch (bool b){
					cout << "LIST EMPTY" << endl;
				}
			}
	
	        //remove element from front of the list if there is a list.
			if(charLetter == "T" && doesListExist == true){
				if(list->getSize() == 0){
					cout << "LIST EMPTY" << endl;
				}
				else{
					list->popFront();
					cout << "REMOVED HEAD" << endl;
				}	
			}
			
			//remove element from back of the list if there is a list.
			if(charLetter == "K" && doesListExist == true){
//.........这里部分代码省略.........
开发者ID:xmansyis,项目名称:CSCI-21-Spring-2014,代码行数:101,代码来源:p3.cpp

示例7: main


//.........这里部分代码省略.........

            case 'D':
              delete list;
              list = NULL;
              cout << "LIST DELETED" << endl;
              break;

             case 'I':
              strValue = currentLine.substr(2);
              ss << strValue;
              ss >> intValue;
              cout << "VALUE " << intValue << " INSERTED" << endl;
              list->insert(intValue);
              break;

            case 'F':
              strValue = currentLine.substr(2);
              ss << strValue;
              ss >> intValue;
              cout << "VALUE " << intValue << " ADDED TO HEAD" << endl;
              list->pushFront(intValue);
              break;

            case 'B':
              strValue = currentLine.substr(2);
              ss << strValue;
              ss >> intValue;
              cout << "VALUE " << intValue << " ADDED TO TAIL" << endl;
              list->pushBack(intValue);
              break;

            case 'A':
              cout << "VALUE " << list->getFront() << " AT HEAD" << endl;
              break;

            case 'Z':
              cout << "VALUE " << list->getBack() << " AT TAIL" << endl;
              break;

            case 'T':
              list->popFront();
              cout << "REMOVED HEAD" << endl;
              break;

            case 'K':
              list->popBack();
              cout << "REMOVED TAIL" << endl;
              break;

            case 'E':
              strValue = currentLine.substr(2);
              ss << strValue;
              ss >> intValue;
              if (list->removeAll(intValue))
                cout << "VALUE " << intValue << " ELIMINATED" << endl;
              else
                cout << "VALUE " << intValue << " NOT FOUND" << endl;
              break;

              case 'G':
              strValue = currentLine.substr(2);
              ss << strValue;
              ss >> intValue;
              if (list->get(intValue))
                cout << "VALUE " << intValue << " FOUND" << endl;
              else
                cout << "VALUE " << intValue << " NOT FOUND" << endl;
              break;

             case 'P':
              cout << list->toString() << endl;
              break;

            case 'N':
              cout << "LIST SIZE IS " << list->getSize() << endl;
              break;

            case 'R':
              strValue = currentLine.substr(2);
              ss << strValue;
              ss >> intValue;
              if (list->removeFirst(intValue))
                cout << "VALUE " << intValue << " REMOVED" << endl;
              else
                cout << "VALUE " << intValue << " NOT FOUND" << endl;
              break;

            default:
              cout << "UNKNOWN COMMAND" << endl;
              break;

          }
        }
      }
     theFile.close();

  }

  return 0;
}
开发者ID:rickshere,项目名称:CSCI-21-SPRING-2014,代码行数:101,代码来源:Driver.cpp

示例8: processFile

void processFile (string filename) {
    stringstream ss;
    int value = 0;
    DLList* list = NULL;
    char firstCharacter;
    ifstream fin(filename.c_str());
    if(!fin.fail()) {
        string nextline;
        while(!fin.eof()) {
            getline(fin, nextline);
            firstCharacter = nextline[0];
            switch(firstCharacter) {
            case '#':
                break;
            case 'C':
                if(list != NULL) { //if there was a previous list delete it
                    delete list;
                }
                else {
                    //creates a new list of type DLList
                    list = new DLList();
                    cout << "LIST CREATED" << endl;
                }
                break;
            case 'X':
                //if no list was created yet create list first
                if(list == NULL) {
                    cout << "MUST CREAT LIST INSTANCE" << endl;
                } //if there was a list clear it with the clear function
                else {
                    list->clear();
                    cout << "LIST CLEARED" << endl;
                }
                break;
            case 'D':
                //if there is a list deleted it
                if(list!= NULL) {
                    delete list;
                    cout << "LIST DELETED" << endl;
                }//if there isn't show warning
                else
                    cout << "MUST CREAT LIST INSTANCE" << endl;
                break;
            case 'I':
                if(list == NULL) {
                    cout << "MUST CREAT LIST INSTANCE" << endl;
                }
                else {
                    ss.str(nextline.substr(2));//gets the next whole value after the first value on a line
                    ss >> value;//puts the from input into an int
                    list->insert(value);//inserts the value into a node on the list
                    cout << "VALUE " << value << " INSERTED" << endl;
                    ss.clear();
                    ss.str("");
                }
                break;
            case 'F':
                ss.str(nextline.substr(2));
                ss >> value;
                list->insertHead(value);//inserts the value from input into the first node
                cout << "VALUE " << value << " ADDED TO HEAD" << endl;
                ss.clear();
                ss.str("");
                break;
            case 'B':
                ss.str(nextline.substr(2));
                ss >> value;
                list->insertTail(value);
                cout << "VALUE " << value << " ADDED TO TAIL" << endl;
                ss.clear();
                ss.str("");
                break;
            case 'A':
                if(list == NULL) {
                    cout << "VALUE NULL AT HEAD" << endl;
                }
                else {
                    list->getHead();
                    cout << "VALUE " << list->getHead() << " AT HEAD" << endl;
                }
                break;
            case 'Z':
                list->getTail();
                cout << "VALUE "  << list->getTail() << " AT TAIL" << endl;
                break;
            case 'T':
                if(list == NULL) {
                    cout << "MUST CREATE LIST INSTANCE" << endl;
                }
                else if (list->getSize() > 0) {
                    list->removeHead();
                    cout << "REMOVED HEAD" << endl;
                }
                else {
                    cout << "LIST EMPTY" << endl;

                }
                break;
            case 'K':
                if(list == NULL) {
//.........这里部分代码省略.........
开发者ID:jacobpicard,项目名称:csci21,代码行数:101,代码来源:processFile.cpp


注:本文中的DLList::getSize方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。