-5
私はこのコードに固執していますのでプログラミングには新しかったです。リンクリストを実装し、コメントに記載されている関数を適用しようとしています。 プログラムをデバッグするときにエラーは表示されませんが、コードを実行すると「コンソールアプリケーションが動作しなくなりました」と表示されます。 ここで何が問題なのか分かりません。なぜそれは機能しませんか?私のコードで何が問題になっていますか?出力は表示されません
#include<iostream>
#include<conio.h>
using namespace std;
/*• InsertNodeAtFront()
• InsertNodeAtBack()
• PrintList()
*/
class list {
struct node {
int data;
node* next;
};
node *head;
node *current;
public:
list() {
head = NULL;
current = NULL;
}
void InsrtAtFront(int n) {
node *temp = new node;
temp->data = n;
temp->next = NULL;
if (head == NULL) {
temp = head;
}
else {
temp->next = head;
head = temp;
}
}
void InsrtAtBack(int a) {
node *temp1 = new node;
temp1->data = a;
temp1->next = NULL;
if (head == NULL) {
temp1 = head;
}
else {
current = head;
while (current->next!=NULL){
current = current->next;
}
current = temp1;
}
}
void print() {
current = head;
while (current->next != NULL) {
cout << current->data;
current = current->next;
}
}
};
void main() {
list obj1, obj2, obj3;
obj3.print();
obj1.InsrtAtFront(5);
obj1.InsrtAtFront(7);
obj1.InsrtAtFront(9);
obj3.print();
obj2.InsrtAtBack(2);
obj2.InsrtAtBack(4);
obj2.InsrtAtBack(6);
obj3.print();
}
このような問題を解決する正しいツールは、デバッガです。スタックオーバーフローを尋ねる前に、コードを一行ずつ進める必要があります。詳しいヘルプは、[小さなプログラムをデバッグする方法(Eric Lippert)](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)を参照してください。最低限、問題を再現する[最小、完全、および検証可能](http://stackoverflow.com/help/mcve)の例と、その問題を再現するためのデバッガ。 –
@πάνταῥεῖ、あなたはそのコメントをサイドに格納しているのでしょうか、それともプラグインするためのブラウザマクロがありますか?あなたは超高速に追加することができます:) – StoryTeller
@StoryTellerここに行く:https://chrome.google.com/webstore/detail/insert-snippet/nfhllbdppejecjnhnjjagjhpcbjhkcpf?utm_source=chrome-app-launcher-info-dialog –