15 / 4 / 2
Регистрация: 01.12.2010
Сообщений: 157
|
|
1 | |
Нужно разобраться с средой разработкой для C++07.03.2014, 03:49. Показов 1038. Ответов 17
Метки нет (Все метки)
Привет Всем !
Если я не ошибаюсь то с .NET 2003 (VS 7.1) шапки языка C++ немного изменился, и разница была следующая: 1. до: #include <iostream.h> void main(void) ...... и т.д... 2. после: #include <iostream> using namespace std: void main(void)........ и т.д... В чем разница между до и после? У меня есть Visual Studio 2013 Ultimate и он выкидывает ошибки если идти по первой версии, но если по второй то все ОК. Как мне настроить Visual Studio 2013 что бы работал и первый вариант? Огромное Спасибо !!!!
0
|
07.03.2014, 03:49 | |
Ответы с готовыми решениями:
17
Не могу разобраться со средой программирования MVS 2017 Нужно ли знать HTML, если заниматься разработкой на PHP? На каком уровне нужно знать английский, что бы заниматься web-разработкой? Нужно разобраться с написанием программы для замены букв на цифры (шифратор) |
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
07.03.2014, 07:19 | 2 |
using namespace std: это просто использование пространства имен. Если хочешь убрать эту строку, то нужно везде где используются имена из этого пространства имен, добавить например std::
0
|
15 / 4 / 2
Регистрация: 01.12.2010
Сообщений: 157
|
|
07.03.2014, 08:39 [ТС] | 4 |
Да.. это я знаю, только почему в древних версиях возможно было писать код, а в более новых мы обязаны вводить пространство имен?
0
|
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
07.03.2014, 08:40 | 5 |
Morris, Ну возможно это пространство имен было просто прописано в другом месте.
1
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
||||||
07.03.2014, 08:46 | 6 | |||||
Сообщение было отмечено Morris как решение
Решение
потому что изменился стандарт
а стандарт изменился потому что слишком много сущностей появилась в языке и стала возможна колизия имен вот и разбили их по группам никто не мешает создать свой файл-заглушку iostream.h
но будь готов к тому что программы будут не переносимы
1
|
15 / 4 / 2
Регистрация: 01.12.2010
Сообщений: 157
|
|
07.03.2014, 08:53 [ТС] | 7 |
Скажите пожалуйста. Возможно ли и сейчас в новых средах разработки использовать старый подход?
Добавлено через 1 минуту а....,, извини кажется разобрался. все понял!!! Огромное Спасибо!
0
|
15 / 4 / 2
Регистрация: 01.12.2010
Сообщений: 157
|
|
07.03.2014, 09:54 [ТС] | 9 |
У меня есть довольно старые, но очень хорошие учебники по C++, и там код написан по древнему виду, как: #include <iostream.h>. Эти учебники в области разработки STL, для компьютерной геометрии.
Значит смело можно изменять код с <iostream.h> на <iostream> и все будет хорошо работать в дальнейшем, верно?
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
|||||||||||
07.03.2014, 10:02 | 10 | ||||||||||
не совсем
значит нужно включать <iostream> и подключить область видимости но могут быть и другие косяки нужно проверять каждую строчку например на память в 6 работало в современных нет
1
|
15 / 4 / 2
Регистрация: 01.12.2010
Сообщений: 157
|
|
07.03.2014, 10:23 [ТС] | 11 |
То, что нужно будет еще и добавить в шапочке using namespace std; это я знаю.
Ясно, и спасибо за пример . Для меня самое главное то, чтобы я писал четко по стандарту ISO, и что это не микрософтовская фишка.... .NET . Извините что вас засыпал вопросами просто видать вы совсем неплохо понимаете язык ! И еще последний вопрос: На протяжении изучении языка я хочу четко прикладываться к учебникам. И поскольку есть небольшие, но очень важные нюансы мне бы хотелось узнать как я могу настроить VS2013 ultimate под старый вид (<iostream.h>), или если это сделать не возможно, то что вы мне можете посоветовать по поводу компилятора? знаю что есть такие как: Intel Parallel Studio XE Builder C++ Eclipse C++
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
|
07.03.2014, 10:30 | 12 |
я с ним не работал
у меня 2008 вот его настроить не возможно это уже требования стандарта найди на просторах интернета стандарт и изучи сейчас появился новый стандарт 11, с ним я тоже не работал, но там много что вообще по другому, так VS2013 вроде его поддерживает
0
|
18840 / 9839 / 2408
Регистрация: 30.01.2014
Сообщений: 17,280
|
|
07.03.2014, 13:01 | 13 |
Не надо этого делать. Во многих средах разработки этого файла вообще может не быть. А использование его совместно с новыми средствами может приводить к ошибкам.
И книжки старые, даже если они хорошие, лучше обновить. Либо найти более новые издания этих же, либо сменить авторов. Проблем потом не оберетесь. Зачем приучаться к способам, которыми сейчас никто не пользуется (а зачастую они бывают вредны в современных условиях)?
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
|
07.03.2014, 16:05 | 14 |
еще раз повторю
сам напишешь этот файл, разумеется в новых компиляторах его нет если у тебя есть старые исходники и их нужно скомпилить на новом компиляторе то это самый простой путь разумеется "с нуля" писать с такими костылями не рекомендуется Добавлено через 2 минуты А как насчет переосмыслить код и написать заново с новыми требованиями Книги тем и хороши что там есть методика и алгоритмы, а не голые листинги
0
|
18840 / 9839 / 2408
Регистрация: 30.01.2014
Сообщений: 17,280
|
|
07.03.2014, 17:24 | 15 |
Чтобы переосмыслить - надо знать что именно следует переосмыслить. Хорошо рассуждать с высоты опыта, а когда ты в самом начале пути, очень трудно выбрать верное направление. А книги, которые советует не то, могут усугубить ситуацию.
Разве здесь как раз не эта ситуация? Добавлено через 20 минут Старые книги, зачастую грешат ручной микрооптимизацией. Чрезмерным акцентированием внимания на этом. Создается впечатление, что это нужно делать всегда. Или, например, встречаются утверждения или примеры не соответствующие современным условиям безопасного кода. Увлечения преобразованиями типов, тотальный ручной контроль ресурсов, вместо использования RAII, обилие макросов и неуделение внимания разнице между ними и кодом на С++. Кроме этого в таких книгах, в силу их возраста, вообще могут отсутствовать разделы о многих возможностях современного С++, и это не обязательно какие-то хитрые и малоиспользуемые конструкции. У меня лежит одна такая книга, 98 года издания. Там, например, советуют использовать ключевое слово register для счетчика цикла или рассказывают о том, что результат new нужно проверять на ноль. Книга хорошая в своей основе (написана хорошо, и для 98 года очень актуально), но все эти мелочи потом аукнутся, если не иметь источника для проверки этих сведений.
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
|
07.03.2014, 18:21 | 16 |
Сообщение было отмечено Morris как решение
Решение
да, есть за мной такой грешок
ну это смотря что за книги например Все книги по конкретным средам программирования как то Борланд Си 3.0 или МАСМ 4.0 мною собраны и отнесены в самый дальний угол, выбросить как то рука не поднимается а вот есть серия книг про машинную графику Л. Аммерал периодически перечитываю есть куча алгоритмов для двумерной и трехмерной графики матрицы, векторы( не контейнеры) да и знаменитую Петцольд Ч. "Программирование для Windows 95" нет нет да открою так что не совсем согласен иногда просто нет других изданий или авторов
1
|
18840 / 9839 / 2408
Регистрация: 30.01.2014
Сообщений: 17,280
|
|
07.03.2014, 18:28 | 17 |
ValeryS, ну мы в разделе по С++, я говорил про книги по языку. Язык и подходы развиваются и старые способы могут быть вредны на новой почве. Их изучить можно и потом, когда будет на что опереться. Но есть материал, который, может быть устарел морально, но не предметно. Например в силу того, что программная и аппаратная платформа, по которой написана книга, более не применяется - это совсем другое дело. Читая такую книгу нельзя принести вред, потому что информация там не противоречит современным условиям. Ты собственно привел примеры из такой категории, которую я даже не имел в виду
Есть такое понятие, которое четко описывает, эту категорию - "классика". Вот, например, Достоевский - это классика, читать его можно в любом веке. А словарь русского языка - нет, его надо обновлять, иначе пользуясь изданием 1905 года, мы сможем составить неправильное впечатление о языке. Надеюсь эта аналогия четко пояснит что я имею в виду.
1
|
15 / 4 / 2
Регистрация: 01.12.2010
Сообщений: 157
|
|
10.03.2014, 04:44 [ТС] | 18 |
В моем конкретном случае речь идет о виде программирования векторной графике. К нему я и собираюсь приложить C++.
Речь не совсем о технологическом, а о научном виде программирования. Книги которые у меня имеются на разных языках и есть еще темы из лекции и все они имеют вид <iostream.h>, <vector.h> и т.д. Поэтому я и хотел получить четкое направление чтобы окунувшись в глубь языка не возникали проблемы в области технологии. Например: можно ли вызвать код в библиотеку .NET, интегрируется ли с C# или с VB, это мне не совсем интересно. Поскольку я выбрал узкую специализацию и владею не плохой библиотекой для изучения данной темы хочу по благодарить о вас о помощи. Спасибо за помощь! Добавлено через 2 часа 40 минут Поскольку я выбрал узкую специализацию и владею не плохой библиотекой для изучения данной темы. Хочу поблагодарить вас. Спасибо за помощь!
0
|
10.03.2014, 04:44 | |
10.03.2014, 04:44 | |
Помогаю со студенческими работами здесь
18
Нужно разобраться, не знаю с чего начать и как грамотно составить.Нужно,чтобы было ветвление Проблемы с разработкой чека для базы данных "Строймаркет" Поделитесь средой! Помогите со средой Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |