Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Страус
12 / 1 / 1
Регистрация: 15.04.2012
Сообщений: 26
#1

Устаревшие стандарты - C++

02.02.2013, 23:17. Просмотров 501. Ответов 5
Метки нет (Все метки)

Всем доброго вечера!

В ходе пятидневного экспресс-обучения С++ столкнулась с проблемой, которую нужно решить в самые краткие сроки, а именно сегодня, так как завтра уже судный день.
В моём наличии учебное пособие, датированное 2003 годом, поэтому синтаксис многого - особенно директив препроцессора, ух и намучилась я с ними! - устаревший.
Я понимаю, что не вполне корректно формулирую просьбу, но прошу по возможности рассказать об изменениях синтаксиса самых ходовых функций в последнее время - путём самостоятельного поиска мне удалось найти очень немного.
Буду очень вам признательна!

Ну, к примеру, вместо
C++
1
#include <iostream.h>
вот это
C++
1
2
#include <iostream>
using namespace std;
И вместо
C++
1
ifstream fin("in.txt", ios::in||ios::nocreate);
это
C++
1
ifstream fin("in.txt");
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.02.2013, 23:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Устаревшие стандарты (C++):

Стандарты оформления кода - C++
Здравствуйте. Где можно доходчиво прочесть по стандартам оформления кода? Желательно на русском. Ибо часто вижу, допустим, такое: ...

Оформление кода на С++ (стандарты кодирования) - C++
Добрый день, написал лабораторную на с++, а преподаватель не хочет принимать из-за стандартов оформления, дак вот, как привести программу к...

Стандарты и стили языков программирования - C++
Занимаясь программирование, например С++, иногда задумываешься, читая различную литературу и разбирая чужие коды программ, что большинство...

Объясните небольшой фрагмент кода (новые стандарты) - C++
template&lt;typename Op, typename ... F&gt; class TupleComposer { public: Op m_op; tuple&lt;F ...&gt; m_fs; public: TupleComposer(Op...

Устаревшие драйвера - Windows XP
привет! как проверить используются драйвера системой или нет? программа driver pack solution выдает два устаревших драйвера... Их надо...

Устаревшие html-элементы - HTML, CSS
При верстке HTML писем рекомендуется &quot;Использовать при верстке устаревшие html-элементы (например, &lt;font&gt;)&quot; Имеется в виду конструкция...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
palva
2610 / 1832 / 262
Регистрация: 08.06.2007
Сообщений: 6,989
Записей в блоге: 4
02.02.2013, 23:26 #2
А это не обновление синтаксиса, это немного разная организация обращений к библиотекам. Современные компиляторы (уж больше десяти лет) допускают все эти варианты. Вот лет 15 назад заголовочных файлов без буквы h не было. И namespace не поддерживались.
Страус
12 / 1 / 1
Регистрация: 15.04.2012
Сообщений: 26
02.02.2013, 23:30  [ТС] #3
Цитата Сообщение от palva Посмотреть сообщение
Современные компиляторы (уж больше десяти лет) допускают все эти варианты.
Это, конечно, очень здорово, но у меня и Visual Studio 2010, и Dev-C++ (4.9, что ли) ругаются на разные варианты и принимают только вторые.
Мне завтра зачёт сдавать по структурному программированию, на С++ пишу впервые, а что там за ИСР стоят, мне неизвестно. Вот и боюсь на такой ерундистике застопориться.
palva
2610 / 1832 / 262
Регистрация: 08.06.2007
Сообщений: 6,989
Записей в блоге: 4
02.02.2013, 23:50 #4
Цитата Сообщение от Страус Посмотреть сообщение
ругаются на разные варианты и принимают только вторые
И в самом деле Когда-то я стал придерживаться рекомендации использовать второй вариант и был не в курсе, что первый вариант уже не возможен. Но сишные заголовки, скажем, stdio.h и прочие можно подключать и так:
C++
1
2
3
4
#include <cstdio>
#include <cstdlib>
#include <cstring>
using namespace std;
Короче, не заморачивайтесь, если не будет работать так, попробуйте иначе. Не думаю, что к вам будут из-за этого претензии. В заголовочных файлах до сих пор наблюдается разнобой.
Страус
12 / 1 / 1
Регистрация: 15.04.2012
Сообщений: 26
03.02.2013, 00:04  [ТС] #5
palva, Будем надеяться, что проверяющая программа войдёт в положение
Приятного остатка вечера и ночи, спасибо за помощь.
MrGluck
Модератор
Эксперт CЭксперт С++
7210 / 4376 / 638
Регистрация: 29.11.2010
Сообщений: 11,887
03.02.2013, 04:19 #6
C++
1
#include <iostream.h>
Данный хедер содержит объекты cout и cin, которые находятся в глобальном пространстве имен, но после стандарт решил перенести их в namespace std; и возник хедер <iostream>
то бишь
::cin и ::cout превратились в std::cin и std::cout
На момент написания книги о пространствах имен не было ничего известно, отсюда и старый стиль.
Вы можете столкнуться с требованием использовать первый вариант сейчас лишь на борланде, VS и mingw (входящий в состав dev-cpp) уже про пространство имен наслышаны.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2013, 04:19
Привет! Вот еще темы с ответами:

Устаревшие расширения MySql - PHP БД
Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in...

Проверка mail и устаревшие функции - PHP
Взял функцию для проверки e-mail , но там устарели две функции function checkEmail($email) { if(eregi(&quot;^+@+\.+$]&quot;,$email)) { ...

SVN :: Выявить устаревшие файлы - Системы контроля версий
Как найти и удалить в пределах заданной папки (на компьютере, не в репозитории) файлы, которые были представлены с таким же содержимым в...

Из MySQL таблицы извлекаются устаревшие данные - PHP БД
Скорее всего неправильно написал заголовок из-за непонимания причины проблемы, но вот в чём проблема: &lt;?php require_once...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
03.02.2013, 04:19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru