C ++ простая программа справки String Data - PullRequest
0 голосов
/ 06 февраля 2011

Спасибо, что помогли мне заранее! Я привык к Java и C #, но C ++ совершенно другой. Я пытаюсь сделать часть B этой лаборатории: http://cs.binghamton.edu/~sgreene/cs240-2010f/labs/lab2.html

Это идея, которая назначена в части B? Также я не знаю, чего именно не хватает в заголовочном файле, который имеет дело с неопределенным концом и т. Д. Я провел исследование и, похоже, ничего не пропустил. И, наконец, что означает лабораторное назначение, когда оно говорит: «В операторе [] следует проверить индекс, чтобы подтвердить, что он находится между 0 и 9. Если это не так, вместо него должна быть возвращена строка« Не определено »». Спасибо

хорошо, вот мои обновленные файлы

#include "TenStrings.h"

using namespace std;

//Default Constructor
TenStrings::TenStrings()
{
    public:

    TenStrings str[10];
    str[0] = "String 1";
    str[1] = "String 2";
    str[2] = "String 3";
    str[3] = "String 4";
    str[4] = "String 5";
    str[5] = "String 6";
    str[6] = "String 7";
    str[7] = "String 8";
    str[8] = "String 9";
    str[9] = "String 10";
}
;

main.cpp -------------------------- * /

#include "TenStrings.h"
#include <iostream>

int main()
{
    TenStrings varTen;

    std::cout << str[2] << std::endl;
    return 0; 
}

также отсутствует строка в моем заголовочном файле: #include?

1 Ответ

0 голосов
/ 06 февраля 2011

Я замечаю, что задание несет это предупреждение:

Это индивидуальное задание - вы НЕ можете работать в группах. Не пишите и не диктуйте код для кого-либо еще и не используйте код от кого-либо еще. Если вы нарушите это правило, вы можете провалить весь класс.

Поэтому я приведу только некоторые указания, а не код.

Сначала я не знаю, где создать новые строки данных, должны ли они быть в моем классе заголовка или tenstrings.cpp?

В задании говорится:

Реализовать этот класс TenStrings таким что он действует как массив из 10 строки константных данных. Начните с основной оператор [], а Конструктор.

Слово "инструмент" является ключевым. Пока вы не узнаете о определениях встроенных функций (что, я полагаю, вы еще не получили), реализация всегда должна находиться в одном из cpp файлов (в данном случае, tenstrings.cpp. ) * * тысяча двадцать-один

Должен ли я создать массив пустых строки? или массив String1, строка2, строка3 и т. д.?

В задании говорится:

В конструкторе 10 строк должен быть изначально установлен на «Первый Строка "," Вторая строка "и т. Д.

Другими словами, конструктор для класса TenString должен сделать первую строку (т. Е. С индексом [0]) имеющей точное значение "First String"; и так далее до десятой строки (с индексом [9]), имеющей точное значение "Tenth String". Очевидно, что цель состоит в том, чтобы иметь возможность изменять эти назначения с помощью оператора [], который вы должны написать как часть класса TenString.

Надеюсь, это поможет. (Я думаю , что правильно интерпретировал задание, но не могу этого гарантировать.)

Да, и кстати, эта строка не нужна:

#include <string>

, поскольку в присваивании специально указано , а не для использования класса String.

EDIT : Кроме того, в заголовочном файле отсутствует строка в начале. Отсутствующая строка связана с защитой #ifndef / #define / #endif, упомянутой в назначении.

...