К вашему актуальному вопросу, VS подойдет для вашего курса, хотя я все еще озадачен оригинальной версией лектора этого кода.
Однако действительно полезно потратить время на то, чтобы понять, что сделали все ваши изменения и почему они решили вашу проблему. Может быть, вы уже сделали это - это не то впечатление, которое я получил от фразы
То, что я понял, сработает после некоторого поиска в Google
- когда вы получаете сообщение об ошибке компиляции или предупреждение, прочитайте его и попытайтесь понять это.
- если вы не понимаете ошибку - и это нормально, конечно, пока вы учитесь - тогда взломать код, пока он не заработает, вполне нормально. По крайней мере, иногда это происходит быстрее, и знание того, что вы достигли прогресса, является собственной наградой.
- если взлом кода с помощью Интернета в вашем распоряжении не решит проблему, вам просто нужно больше изучить сообщение об ошибке. Включение всех ошибок и предупреждений компилятора и попытка использования нескольких компиляторов могут оба помочь - даже если все они терпят неудачу, сообщения могут быть более полезными. (Я часто нахожу, что в clang есть полезные ошибки, и godbolt.org очень полезен).
если взломать код действительно найдет решение, вы все равно должны попытаться понять, почему . Теперь вы можете увидеть, что вы изменили, посмотреть на исходную ошибку и попытаться понять, почему ваши изменения исправили ее. Если вы сделали несколько изменений, все ли они были действительно необходимы? Ты понимаешь, что они все сделали и почему?
Если вы сделаете это, вы сможете исправить следующую связанную проблему * на 1027 * быстрее , вместо того, чтобы снова проходить весь процесс проб и ошибок. Вы даже можете написать лучший код, который позволит избежать проблемы в первую очередь.
Это та часть, которая на самом деле составляет обучение, поэтому я обращаю внимание на это.
Важным исправлением было изменение линий
include <iostream>
main()
до
#include <iostream>
int main()
потому что первые не являются легальными C ++. Если ваш лектор действительно написал именно это, а вы как-то не ошиблись, то я понятия не имею, почему их пример сработал.
Специфичные для Visual Studio вещи - это предварительно скомпилированный заголовок, как описано в ответе Габриэля.
Но оставшиеся изменения по сути косметические. Замена:
using namespace std;
с
using std::cout;
Ничего не влияет на ваш код, и только использование
std::cout << "Hello world! :-)";
(без using
вообще) будет работать так же хорошо.