Ответ 1
Там нет проблем с этой программой. (За исключением, вероятно, некоторых стилистических вопросов -
using namespace std
не рекомендуется). Проблема с Турбо C++. Это очень старая часть программного обеспечения. Он реализует диалект C++, так называемый пре-ANSI C++, который полностью вышел из употребления к началу этого тысячелетия. Первый стандарт ANSI для C++ был опубликован в 1998 году, затем была версия 2003 года, версия 2011 года, версия 2014 года, версия 2017 года, и теперь мы ожидаем, что версия 2020 года будет официально опубликована. Каждая из этих стандартных версий внесла более или менее значительные изменения в язык.
Для Turbo C++ вы должны изменить программу следующим образом:
#include <iostream.h> // note the .h suffix
// using namespace std; // Turbo C++ does not implement namespaces
int main()
{
cout << "Hello, World!";
return 0;
}
Если вы посмотрите на эту программу, разница между современным диалектом C++ и диалектом, принятым Turbo C++, может показаться небольшой. Однако он станет намного больше, поскольку ваши программы будут становиться все более сложными.
Хотя вы можете изучать программирование с использованием Turbo C++, я настоятельно рекомендую избегать этого, если это возможно, из-за следующих проблем:
- Вы будете изучать язык, который в некоторой степени похож на популярный в отрасли язык, но, тем не менее, сильно отличается от других без уважительной причины. Если вы планируете написать C++ для реальной разработки программного обеспечения, вам придется многому научиться заново. Выучить современный C++ намного легче сразу.
- До сих пор нет литературы о Turbo C++. Почти 100% материалов C++, которые вы найдете в Интернете или в книгах, не имеют прямого отношения к Turbo C++ из коробки. Некоторым потребуется лишь незначительная адаптация, в то время как другие материалы совершенно непригодны. Практически единственный доступный вам источник помощи - это встроенная справка Turbo C++.
- Мало кто помнит Turbo C++. Задавая вопросы на форумах, всегда указывайте, что вы используете pre-ANSI диалект, чтобы отфильтровать ответы, ориентированные на современную версию языка. Вы, вероятно, получите кучу комментариев, предлагающих вам немедленно остановиться и переключаться на современный компилятор с каждым вопросом, который вы задаете.
Есть много современных бесплатных (как в beer, а также в speech) компиляторов и IDE, которые вы можете использовать вместо Turbo C++. Некоторые из них включают в себя:
- Visual C++ Community Edition - это интегрированная среда разработки и компилятор от Microsoft
- Code :: Blocks - это облегченная среда разработки. В Windows он поставляется с несколько устаревшим компилятором, но вы можете установить более современный компилятор самостоятельно
- Eclipse CDT - это мощная кроссплатформенная IDE. Он не поставляется с собственным компилятором, поэтому вам нужно установить отдельный компилятор. В Windows используйте, например, MinGW.
- Еще много
- Кроме того, есть много онлайн-компиляторов, таких как http://ideone.com, https://www.onlinegdb.com/ и http://coliru.stacked-crooked.com/, а также и многие другие (они в основном хороши для опробования идей и написания очень маленьких программ).
- Оба Clang/LLVM и GCC являются компиляторами свободного программного обеспечения, поддерживающими последние версии C++.
К сожалению, некоторые школы/учителя вынуждают учащихся использовать Turbo C++ даже в наши дни. К сожалению, это не то, что может исправить это сообщество. Если вы окажетесь в такой ситуации, приготовьтесь к тому, что вы не сможете получить много посторонней помощи.