-3

さまざまなファイルにクラスを作成したので、これらのクラスを他のファイルに記述されたメイン関数にリンクしたい(これらのファイルはすべてコードブロックの単一プロジェクトに存在する)。ヘッダーを書くことが解決策である場合、これらのファイルをリンクすることもできないヘッダーに含めるすべての要素。私の主な機能は

#include <iostream>
#include "linkedlist.h"
using namespace std;

int main()
{
    linkedlist<int> obj1;
    obj1.create();
    obj1.add_node_at_beginning(10);
    obj1.add_node_at_beginning(20);
    obj1.add_node_at_beginning(30);
}

これらの関数はすべて、私のヘッダーファイルがテンプレートを持つlinkedlistクラスで定義されています

#ifndef LINKEDLIST_H_INCLUDED
#define LINKEDLIST_H_INCLUDED

template <class N>
struct Node
{
Node<N> *ptr_to_nxt_node;
 N data;
};

template <class LL>
class linkedlist
{
    Node<LL> *strt;
    Node<LL> *end;
    int n;
    Node<LL> *nde;

public:
    linkedlist();
    void create();
    void add_node_at_beginning(LL dat);
    void add_node_at_end(LL dat);
};


#endif // LINKEDLIST_H_INCLUDED
4

1 に答える 1

1

コードブロックがどのように関連付けに失敗するのかわかりません。とにかく、いつでも手動で行うことができます...

    g++ -g -o main.exe main.cpp linkedlist.cpp

確実に:

  • main.cpp linkedlist.cppそしてlinkedlist.hあなたのプロジェクトに存在します。そうでない場合は、プロジェクトを選択してからAdd existing file.

  • このように含める必要がある場合linkedlist.hと同じフォルダーにあるかどうかを確認してくださいmain.cpp
    #include "subfolder/main.cpp"

于 2013-08-15T19:32:41.253 に答える