Я работаю над проблемой для класса более 6 часов и попал в путаницу. Не уверен, какую ошибку я совершил, и я попытался переместить вещи, удаление включает, добавление включает и даже удаление следующего класса.Файл заголовка не распознан
Проблема, которую я имел до сих пор, заключается в том, что функции, которые я сделал в прототипе в заголовке, а затем в исходном файле не распознаются source.cpp
.
Это все написано в Visual Studio 2015 C++ имена
Файловые: monty.h
и monty.cpp
в порядке.
Нам даны два образца source.cpp
файлов, чтобы проверить нашу работу, однако ни одна из них не дает мне никаких результатов из-за этой ошибки.
Предоставленная основная функция содержит #include "monty.h"
, однако проблема сохраняется.
Заголовок:
#ifndef MONTY_H
#define MONTY_H
class Monty{
private:
int wins; // Number of Wins
int ran; // Random Number Variable
int val; // Value to determine win/loss via functions
int x; // Determines number of times to repeat a function
int count; // Counts number of times function repeated
static int k(int); // 'Keep' choice function
static int s(int); // 'Switch' choice function
static int r(int); // 'Random' choice function
public:
bool monty(char);
int monty(char, int);
};
#endif
Источник файла:
#include "monty.h" // Including header file & other necessary libraries
#include <iostream>
#include <cstdlib>
using namespace std;
bool Monty::monty(char y){
x = 1; // Setting count variable to 1 in order to prevent functions from repeating.
if (y == 'k') // Calling functions depending on char input
val = k(x);
if (y == 's')
val = s(x);
if (y == 'r')
val = r(x);
if (val == 1) // Determining win/loss and returning value.
return true;
else
return false;
}
int Monty::monty(char y, int z){
x = z; // Initializing independent count variable
wins = 0; // Initializing dependent wins variable
count = 0;
while (count < x) {
if(monty(y))
wins++;
}
return wins; // Returning number of wins
}
int Monty::k(int x) {
int ran;
ran = rand() % 3; // Obtaining a random number from 0 to 2
if (ran == 1) {
return 1;
}
else
return 0;
}
int Monty::s(int x){
int ran;
ran = rand() % 3; // Obtaining a random number from 0 to 2
if (ran == 1 || ran == 2) {
return 1;
}
else
return 0;
}
int Monty::r(int x) {
int ran;
ran = rand() % 2; // Obtaining random number from 0 to 1
if (ran == 0)
return k(x);
else
return s(x);
}
две основные функции, которые мы приведены написаны инструктора, и, насколько я могу судить, не содержат ошибок, как я кажется, единственный студент, имеющий эту проблему. Вероятно, я совершил ошибку новобранец, но я сомневаюсь, что я первый.
редактирует:
Точный код ошибки:
C3861 : 'monty': identifier not found - File: source.cpp - Line 18
Запрошенный образец основной файл
// monty_test1.cpp - Test program #1 for Monty module
#include "monty.h"
#include <climits>
#include <cstdlib>
#include <ctime>
#include <iostream>
using namespace std;
static char get_strategy();
int main() {
// Initialize random number generator
srand(time(0));
cout << "Testing monty function..." << endl << endl;
// Call monty function with user's choice of strategy, and report result
if (monty(get_strategy()))
cout << "Contestant won." << endl;
else
cout << "Contestant lost." << endl;
#ifdef _WIN32
system("pause");
#endif
return 0;
}
// Prompt for and input strategy, with validation
static char get_strategy() {
// Get strategy, must be 's', 'k', or 'r'.
char strategy;
cout << "Enter strategy (s, k, r): ";
cin >> strategy;
// Validate input
while (strategy != 's' && strategy != 'k' && strategy != 'r') {
cout << "Stragegy is not valid. Try again." << endl;
cin.ignore(INT_MAX, '\n');
cin >> strategy;
}
// Discard any remaining input
cin.ignore(INT_MAX, '\n');
return strategy;
}
Решение найдено удалял класс со ссылкой на monty
функций в качестве основного функция не может быть отредактирована.
Requested Information about File Organization
Пожалуйста, разместите сообщение об ошибке, которое вы видите. –
Какое сообщение об ошибке? Сообщение об ошибке, вероятно, говорит, что происходит неправильно. –
", а затем определяется в файле ресурсов": что это значит ??? Предположительно "и включен в исходный файл" ... –