Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/127.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 错误:请求成员…;它是非类类型的_C++_Pointers_Compiler Errors - Fatal编程技术网

C++ 错误:请求成员…;它是非类类型的

C++ 错误:请求成员…;它是非类类型的,c++,pointers,compiler-errors,C++,Pointers,Compiler Errors,我理解这与我的指针有关,但我不确定为什么,也不知道如何修复它。谢谢你的帮助。Main非常糟糕,我知道,它目前正在测试数组的输入。我还不允许使用向量,否则这会容易一点 Main.cpp #include <iostream> #include <fstream> #include <iomanip> #include <cmath> #include <ctime> #include <cstdlib> #include "T

我理解这与我的指针有关,但我不确定为什么,也不知道如何修复它。谢谢你的帮助。Main非常糟糕,我知道,它目前正在测试数组的输入。我还不允许使用向量,否则这会容易一点

Main.cpp

#include <iostream>
#include <fstream>
#include <iomanip>
#include <cmath>
#include <ctime>
#include <cstdlib>
#include "ToDoList.h"
using namespace std;
int main() {
    string input;
    ToDoList List(); // <-- ERROR HERE
    for (int i = 0; i < 4; i++){
        cout << "Input 'To Do' to add to list.";
        cin >> input;
        List.AddToArray(input); // <-- ERROR HERE
    }
    List.ListArray();
    return 0;
}
#包括
#包括
#包括
#包括
#包括
#包括
#包括“ToDoList.h”
使用名称空间std;
int main(){
字符串输入;
ToDoList();//输入;
List.AddToArray(输入);//数组[array_count];
对于(int i=0;i无法打开编译器警告。我知道至少Clang对此给出了一个清晰的信息。
ToDoList();
这是一个函数声明。您得到了什么错误?main.cpp:28:14:error:request for member'AddToArray'in'List',这是一个非类类型的'ToDoList())'main.cpp:30:10:错误:请求'List'中的成员'ListArray',该成员为非类类型'ToDoList()'这是两个错误。@user3047909 jrok已经指出了问题,请尝试在
列表
之后删除
()
#include <iostream>
#include <fstream>
#include <iomanip>
#include <cmath>
#include <ctime>
#include <cstdlib>
#include "ToDoList.h"
using namespace std;

ToDoList::ToDoList() {
    array_count = 3;
    array = new string[3];
    array_count_data = 0;
}

ToDoList::ToDoList(const ToDoList& L) {
    array_count = L.array_count;
    array_count_data = L.array_count_data;
    for (int k = 0; k < array_count; k++)
        array[k] = L.array[k];
}

ToDoList::~ToDoList() {
    delete []array;
}

void ToDoList::AddToArray(string input){
    if (array_count == array_count_data){
            string * upsize_array = new string[array_count + 1];
            for(int i = 0; i < array_count; i++)
                upsize_array[i] = array[i];
            delete [] array;
            array_count++;
            this->array[array_count];
            for(int i = 0; i < array_count; i++)
                array[i] = upsize_array[i];
            delete [] upsize_array;
        }
        array[array_count_data] = input;
        array_count_data++;
}

void ToDoList::ListArray(){
    for(int j = 0; j < array_count_data; j++){
        cout << array[j] << endl;
    }
}