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

решил изучить с++ - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 149, средняя оценка - 4.92
Olejeg85
13 / 10 / 0
Регистрация: 27.03.2011
Сообщений: 164
27.03.2011, 17:19     решил изучить с++ #1
всем привет, решил начать изучать с++, скачал MSVC++ 2010 express, какую литературу вы посоветуете для изучения данного языка?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
29.03.2011, 17:20     решил изучить с++ #81
Isantel, Драйвера. Микроконтроллеры. И прочие низкоуровневые штучки)
Вот ща сижу на работе - открыт файл ocilocal.cc - там есть и template<> а есть фишки из Си, чтобы соединиться с БД оракл ну и т.д. С серваками тоже аналогично бывает.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Isantel
13 / 13 / 1
Регистрация: 23.11.2010
Сообщений: 254
29.03.2011, 17:26     решил изучить с++ #82

Не по теме:

поздравляю с первым рабочим днем!) пока справляешься?


а базы данных и SQL изучать долго для связи?
ForEveR
29.03.2011, 17:27
  #83

Не по теме:

Isantel, Второй. Справляюсь, да) Нормуль все. Я с базами дела не имел) Вот сейчас буду читать, чтобы лучше вникать. Я в низкий уровень-то не лезу)

Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
29.03.2011, 18:27     решил изучить с++ #84
Как уже было сказано С++ - высокоуровневый язык, по сравнению с Си или ассемблером. Если очень строгие требования к размеру и производительности приложения (например, ПО для двигателя или ещё, что-то подобное), то приходится писать на максимально низком уровне. Если есть возможность не писать на ассемблере, то пишут на Си.
Для обычных приложений для компьютера я даже не могу представить ситуацию, когда Си будет предпочтительнее С++. Может, какая-то оч оптимизированная часть ОС разве что.
Olejeg85
13 / 10 / 0
Регистрация: 27.03.2011
Сообщений: 164
29.03.2011, 22:30  [ТС]     решил изучить с++ #85
Цитата Сообщение от Deviaphan Посмотреть сообщение
Как уже было сказано С++ - высокоуровневый язык, по сравнению с Си или ассемблером. Если очень строгие требования к размеру и производительности приложения (например, ПО для двигателя или ещё, что-то подобное), то приходится писать на максимально низком уровне. Если есть возможность не писать на ассемблере, то пишут на Си.
Для обычных приложений для компьютера я даже не могу представить ситуацию, когда Си будет предпочтительнее С++. Может, какая-то оч оптимизированная часть ОС разве что.
вообще на с++ можно написать все тоже самое, что и на pure с ^^
и на сколько я правильно понял с++ и си считаются все-таки средним уровнем и как таковые не относятся ни к высокому, ни к низкому уровню программирования

PS а есть такие кто тоже только начал учить с++? просто вместе было бы учить интереснее нежели чем одному, да и задачки или примеры можно друг другу помочь решить или вместе сделать, так сказать немного больше практики будет друг для друга=))
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
29.03.2011, 23:43     решил изучить с++ #86
Olejeg85, Для размышлений скину код на С++ от Александреску. Библиотека Loki.

Вы вот это называете средним уровнем?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    template
    <
        typename T,
        template <class> class OwnershipPolicy,
        class ConversionPolicy,
        template <class> class CheckingPolicy,
        template <class> class StoragePolicy,
        template <class> class ConstnessPolicy
    >
    class SmartPtr
        : public StoragePolicy<T>
        , public OwnershipPolicy<typename StoragePolicy<T>::InitPointerType>
        , public CheckingPolicy<typename StoragePolicy<T>::StoredType>
        , public ConversionPolicy
Для размышлений - класс интеллектуального указателя. Имеет 5 стратегий. Мы их можем задавать сами, что понятно. Итог - бесконечный набор мета-классов с разными стилями поведения.
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
30.03.2011, 06:07     решил изучить с++ #87
Цитата Сообщение от ForEveR Посмотреть сообщение
Вы вот это называете средним уровнем?
Всё зависит от того, с чем сравнивать.))) С ассемблером или Бэйсиком.)
NightmareZ
 Аватар для NightmareZ
1336 / 559 / 37
Регистрация: 31.03.2009
Сообщений: 1,907
30.03.2011, 06:18     решил изучить с++ #88
Цитата Сообщение от ForEveR Посмотреть сообщение
Olejeg85, Для размышлений скину код на С++ от Александреску. Библиотека Loki.

Вы вот это называете средним уровнем?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    template
    <
        typename T,
        template <class> class OwnershipPolicy,
        class ConversionPolicy,
        template <class> class CheckingPolicy,
        template <class> class StoragePolicy,
        template <class> class ConstnessPolicy
    >
    class SmartPtr
        : public StoragePolicy<T>
        , public OwnershipPolicy<typename StoragePolicy<T>::InitPointerType>
        , public CheckingPolicy<typename StoragePolicy<T>::StoredType>
        , public ConversionPolicy
Для размышлений - класс интеллектуального указателя. Имеет 5 стратегий. Мы их можем задавать сами, что понятно. Итог - бесконечный набор мета-классов с разными стилями поведения.
А объясни, пожалуйста, что это всё означает. А именно:
  • вложенность template - template<template < ... >>
  • зачем нужен шаблон без параметра - template <class> class OwnershipPolicy
  • почему в одном случае используется слово typename, а в другом - class
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
30.03.2011, 07:10     решил изучить с++ #89
1. Шаблонный шаблонный параметр
2. Объявление шаблонного класса
3. Это разные случаи. В первом class можно заменить на template. Во втором template обязателен
.)
Настоятельно рекомендую почитать Александреску "Современное проектирвоание на С++". Для меня многое было откровением. Кое что даже использую.)
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.03.2011, 07:35     решил изучить с++ #90
NightmareZ, 3) У Александреску в вступлении написано, что typename он использует для типов, которые могут быть ПОД-ами, а class соответственно для типов которые не могут.
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
30.03.2011, 07:53     решил изучить с++ #91
Цитата Сообщение от ForEveR Посмотреть сообщение
3) У Александреску в вступлении написано, что typename он использует для типов, которые могут быть ПОД-ами, а class соответственно для типов которые не могут
В данном случае ситуация совсем иная.) Почитай Александреску внимательнее.)

Добавлено через 3 минуты
Основное назначение typename- указать компилятору что выражение вида T::x - тип, а не переменная.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.03.2011, 10:11     решил изучить с++ #92
Deviaphan, Ты прости конечно, но вопрос был именно про это подозреваю.

C++
1
2
        typename T,
        template <class> class OwnershipPolicy,
И вот тут все именно так как я сказал.
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
30.03.2011, 10:44     решил изучить с++ #93
А вот тут, не об этом.) Прощаю.)
C++
1
2
3
    class SmartPtr
        : public StoragePolicy<T>
        , public OwnershipPolicy<typename StoragePolicy<T>::InitPointerType>
Olejeg85
13 / 10 / 0
Регистрация: 27.03.2011
Сообщений: 164
04.04.2011, 17:52  [ТС]     решил изучить с++ #94
подскажите, где можно почитать про стандартные заголовочные файлы в том числе какие функции они позволяют использовать типа: gets(), cin.get(), strcpy(), setw() и тд... думал это в stl будет описано, скачал справочник по stl, но там этой информации не нашел.
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
04.04.2011, 18:14     решил изучить с++ #95
Я лично решил прочитать справочное пособие Архангельского(билдер)... В начале книги сказано, что в ней дано полное описание языка. Не самоучитель, конечно, для практики использую сайт ********.
P.S.За неделю осилил примерно треть книги(сидел часов по 6-8 в день)... Получается, она не полная? Просто в начале темы говорилось, что для изучения с++ потребуется около полугода, вот я и усомнился...
Olejeg85
13 / 10 / 0
Регистрация: 27.03.2011
Сообщений: 164
04.04.2011, 18:24  [ТС]     решил изучить с++ #96
Цитата Сообщение от diagon Посмотреть сообщение
Я лично решил прочитать справочное пособие Архангельского(билдер)... В начале книги сказано, что в ней дано полное описание языка. Не самоучитель, конечно, для практики использую сайт ********.
P.S.За неделю осилил примерно треть книги(сидел часов по 6-8 в день)... Получается, она не полная? Просто в начале темы говорилось, что для изучения с++ потребуется около полугода, вот я и усомнился...
ээ, зависит от того на сколько быстро ты усваиваешь материал, но я не думаю что полностью с++ будет описан в одной книге, скорее там основы описаны
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
04.04.2011, 18:35     решил изучить с++ #97
Цитата Сообщение от Olejeg85 Посмотреть сообщение
ээ, зависит от того на сколько быстро ты усваиваешь материал, но я не думаю что полностью с++ будет описан в одной книге, скорее там основы описаны
Ну... Читаю я в общем то быстро, усваиваю тоже почти на ходу(просто до этого изучал паскаль, и до этой книги немного нахватался из других источников)+интересен мне в основном синтаксис и особенности языка, некоторые главы из книги про особенности билдера пропускаю, тем более, что большую часть из них я знаю из Delphi.
Ну мне собственно основы и нужны=\ Но книжка все-таки внушительная... 544 pdf страницы=\ Исходного кода минимум.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
04.04.2011, 19:26     решил изучить с++ #98
diagon, 544 страницы - это фигня. Страуструп больше 1000 к примеру. И то там описано далеко не все (я про издание для начинающих).
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
04.04.2011, 20:09     решил изучить с++ #99
Цитата Сообщение от Olejeg85 Посмотреть сообщение
думал это в stl будет описано
В справочнике по STL описано только STL.)
Всё есть в MSDN.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.04.2011, 21:18     решил изучить с++
Еще ссылки по теме:

Изучить VC++ вдоль и поперек в наикратчайший срок C++
C++ Решил изучить новую низкоуровневую область в программировании, что посоветуете?
Cтоит ли после изучения Си++ изучить Си C++

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

Или воспользуйтесь поиском по форуму:
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
04.04.2011, 21:18     решил изучить с++ #100
Цитата Сообщение от Olejeg85 Посмотреть сообщение
подскажите, где можно почитать про стандартные заголовочные файлы в том числе какие функции они позволяют использовать
http://www.cplusplus.com/reference/
Yandex
Объявления
04.04.2011, 21:18     решил изучить с++
Ответ Создать тему
Опции темы

Текущее время: 09:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru