无需构建:适用于C ++的Eclipse问题

时间:2013-07-23 22:21:03

标签: c++ eclipse

我有一些Java和Eclipse的经验,但我是C ++的新手,并且正在尝试自学。如果这是一个简单的问题,或者已经被问到的问题,我很抱歉(虽然我看了一会儿。)我在Windows 8上。

我试图制作一个排序的链表(这相对不重要。)我得到:

Info: Nothing to build for Working.

这是我的代码:

/*
*  SortedList class
*/
#include <string>
#include <fstream>
#include<iostream>
#include "SortedList.h"

using namespace std;

//the ListNode Structure
struct ListNode {
    string data;
    ListNode *next;
};

//the head of the linked list and the pointer nodes
ListNode head;
ListNode *prev, *current;

// insert a string into the list in alphabetical order
//now adds a string to the list and counts the size of the list
int Insert(string s){
//make the new node
ListNode temp;
temp.data = s;
//the node to traverse the list
prev = &head;
current = head.next;
int c = 0;
//traverse the list, then insert the string
while(current != NULL){
    prev = current;
    current = current->next;
    c++;
}

//insert temp into the list
temp.next = prev->next;
prev->next = &temp;

return c;
}

//Return the number of times a given string occurs in the list.
int Lookup(string s){
return 0;
}

//prints the elements of the list to ostream
void Print(ostream &output){
}

int main( int argc, char ** argv ) {
cout << Insert("a") << endl;
cout << Insert("b") << endl;
cout << Insert("d") << endl;
}

这是我的标题:

using namespace std;

#ifndef SORTEDLIST_H_
#define SORTEDLIST_H_

class SortedList {
  public:
    // constructor
    SortedList();
    // modifiers
    int Insert(string s);
    // other operations
    int Lookup(string s) const;
    void Print(ostream &output) const;

  private:
    struct ListNode {
       string data;
       ListNode *next;
    };
    // pointer to the first node of the list
    ListNode head;
    ListNode *prev, *current;
};
#endif /* SORTEDLIST_H_ */

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:-1)

为什么不使用std :: deque(在头文件中)?它可能具有您正在寻求的所有功能,它经过了全面测试和优化。如果您需要具有更多功能的双端队列,请创建一个继承它的类并添加您需要的功能。查看http://en.cppreference.com/w/cpp/containe并选择最适合您需求的容器。

作为一般建议,如果你需要的东西已经在一些好的和稳定的库(STL,boost,GSL,Armadillo或类似的)中可用,那么更好地使用它而不是自己编写+ debug +优化它。作为一般建议,请将您的精力集中在应用程序独有的代码上,并重用已经完成的工作(但只有经过充分测试,不要使用糟糕的半熟库)。