Я всего лишь начальный кодер и все .. Я пытался создать печатную таблицу, используя статическую массив из 10 лучших фильмов от гнилых помидоров вместе со своим критиком и рейтингом аудитории.Аргумент типа "std :: string (*) [10]" несовместим с параметром типа "Movie *"
Мне дали структуру Movie and void PrintMovies. Однако, когда я пытаюсь вызвать PrintMovies, массив заголовков не работает. Ошибка продолжает говорить, что аргумент несовместим. Я не понимаю, что это значит и не понимает, как это исправить.
Также, если вы знаете, как закончить отображение таблицы, вы можете мне помочь? Я сделал цикл for для 2-D массива, но я не знаю, как продолжить после него.
//--------------------------------Movie.h-------------------------------
#ifndef _Movie_
#define _Movie_
#include <iostream>
struct Movie
{
std::string title;
int criticRating; // from 0 to 100
int audienceRating; // from 0 to 100
};
#endif /*defined _Movie_*/
//-----------------------------------Movie.cpp-----------------------------
#include <iostream>
#include <string>
#include <algorithm>
#include "Movie.h"
#include <iomanip>
using namespace std;
void PrintMovies(Movie* movies, int numMovies);
int main()
{
std::string titles[3][10] = { "Kung Fu Panda", "Hail, Caesar!", "Star Wars: Episode VII - The Force Awakens",
"The Revenant", "The Choice","Pride and Prejudice and Zombies","The Finest Hours",
"Ride Along 2", "The Boy","Dirty Grandpa" };
PrintMovies(titles, 10);
return 0;
}
void PrintMovies(Movie* movies, int numMovies)
{
cout << "Movies\n";
cout << "Critic\t" << "Audience\t" << "Title\n";
for (int row = 0; row < 3; ++row)
{
}
}
Функция ожидает массив значений «Movie». Вы передали массив значений 'std :: string'. Это фундаментальный недостаток в вашей программе, но я не могу предоставить это как ответ, потому что неясно, как вы действительно хотите, чтобы программа вела себя. – paddy
am, ok.. где начать: 1.- Почему бы не сделать класс дыр. 2.- из прототипов PrintMovies вы не можете отбрасывать из std :: string в Movie *. – Joel
@paddy На самом деле, они передали указатель на массив 'std :: string'. – juanchopanza