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

Что такое основы c++? - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.72
zombiethegame
 Аватар для zombiethegame
1 / 1 / 0
Регистрация: 08.08.2011
Сообщений: 23
16.08.2011, 01:49     Что такое основы c++? #1
Точнее, я более-менее понимаю что это, но все же...
Хотелось бы узнать очень подробно что туда входит. Что бы я мог твердо сказать: "Я знаю основы с++!"
Вообщем не только то что туда входит, а и информация об этих "элементах".
Надеюсь расскажите, а то не знаю - знаю или не знаю я основы)
Только не нужно предлагать книги, не хочу заного все повторять)
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
16.08.2011, 02:30     Что такое основы c++? #2
ну это то, что ты узнаешь после изучения и использования языка в практике за пару лет
NightmareZ
 Аватар для NightmareZ
1336 / 559 / 37
Регистрация: 31.03.2009
Сообщений: 1,907
16.08.2011, 02:59     Что такое основы c++? #3
Цитата Сообщение от zombiethegame Посмотреть сообщение
Точнее, я более-менее понимаю что это, но все же...
Хотелось бы узнать очень подробно что туда входит. Что бы я мог твердо сказать: "Я знаю основы с++!"
Вообщем не только то что туда входит, а и информация об этих "элементах".
Надеюсь расскажите, а то не знаю - знаю или не знаю я основы)
Только не нужно предлагать книги, не хочу заного все повторять)
Я вот взял первую попавшуюся программу на C++, которую я писал кому-то на форуме.
Всё понимаешь, что тут написано?
Если да - будем копать дальше.
Если нет - ты не знаешь основ C++.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <iostream>
#include <iterator>
#include <string>
#include <list>
#include <algorithm>
 
class Film
{
public:
    std::string name;
    std::string genre;
 
    friend std::istream& operator>>(std::istream& input, Film& film)
    {
        std::cout << "Input name: ";
        input >> film.name;
        std::cout << "Input genre: ";
        input >> film.genre;
        return input;
    }
 
    friend std::ostream& operator<<(std::ostream& output, const Film& film)
    {
        return output << "Name: " << film.name << std::endl
                      << "Genre: " << film.genre << std::endl;
    }
};
 
int main()
{
    std::list<Film> films(
        (std::istream_iterator<Film>(std::cin)),
         std::istream_iterator<Film>());
    std::cin.clear();
 
    std::cout << "Search. Please input name: ";
    std::string name;
    std::cin >> name;
 
    std::for_each(films.begin(), films.end(), [&name](Film& film) 
        { 
            if (name == film.name)
                std::cout << film;
        });
    return 0;
}
zombiethegame
 Аватар для zombiethegame
1 / 1 / 0
Регистрация: 08.08.2011
Сообщений: 23
16.08.2011, 03:19  [ТС]     Что такое основы c++? #4
Цитата Сообщение от NightmareZ Посмотреть сообщение
Я вот взял первую попавшуюся программу на C++, которую я писал кому-то на форуме.
Всё понимаешь, что тут написано?
Если да - будем копать дальше.
Если нет - ты не знаешь основ C++.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <iostream>
#include <iterator>
#include <string>
#include <list>
#include <algorithm>
 
class Film
{
public:
    std::string name;
    std::string genre;
 
    friend std::istream& operator>>(std::istream& input, Film& film)
    {
        std::cout << "Input name: ";
        input >> film.name;
        std::cout << "Input genre: ";
        input >> film.genre;
        return input;
    }
 
    friend std::ostream& operator<<(std::ostream& output, const Film& film)
    {
        return output << "Name: " << film.name << std::endl
                      << "Genre: " << film.genre << std::endl;
    }
};
 
int main()
{
    std::list<Film> films(
        (std::istream_iterator<Film>(std::cin)),
         std::istream_iterator<Film>());
    std::cin.clear();
 
    std::cout << "Search. Please input name: ";
    std::string name;
    std::cin >> name;
 
    std::for_each(films.begin(), films.end(), [&name](Film& film) 
        { 
            if (name == film.name)
                std::cout << film;
        });
    return 0;
}
Теперь мне есть что изучить!))
Если можно еще указать откуда ИМЕННО ЭТО можно узнать?
NightmareZ
 Аватар для NightmareZ
1336 / 559 / 37
Регистрация: 31.03.2009
Сообщений: 1,907
16.08.2011, 03:41     Что такое основы c++? #5
Цитата Сообщение от zombiethegame Посмотреть сообщение
Теперь мне есть что изучить!))
Если можно еще указать откуда ИМЕННО ЭТО можно узнать?
Из любой адекватной книжки по C++.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
16.08.2011, 10:48     Что такое основы c++? #6
Да, NightmareZ прав, сегодня это считается основами (лет 10 -15 назад ситуация была иной).

Цитата Сообщение от zombiethegame Посмотреть сообщение
Если можно еще указать откуда ИМЕННО ЭТО можно узнать?
Я очень настоятельно рекомендую книгу "Философия С++", там 2 тома. Первый полистай, если все знаешь - можешь не читать (хотя там реально интересные вещи есть), второй том читай обязательно - если будет сложно, то начинай с первого.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
16.08.2011, 10:49     Что такое основы c++? #7
Kastaneda, Лямбда пока еще не основы.
Kastaneda
16.08.2011, 10:55
  #8

Не по теме:

Цитата Сообщение от ForEveR Посмотреть сообщение
Kastaneda, Лямбда пока еще не основы.
Да, я ее в коде не заметил)

zombiethegame
 Аватар для zombiethegame
1 / 1 / 0
Регистрация: 08.08.2011
Сообщений: 23
16.08.2011, 16:07  [ТС]     Что такое основы c++? #9
А что было 10-15 лет назад?
А то я тогда еще только родился
Сыроежка
Заблокирован
16.08.2011, 16:31     Что такое основы c++? #10
Цитата Сообщение от zombiethegame Посмотреть сообщение
Точнее, я более-менее понимаю что это, но все же...
Хотелось бы узнать очень подробно что туда входит. Что бы я мог твердо сказать: "Я знаю основы с++!"
Вообщем не только то что туда входит, а и информация об этих "элементах".
Надеюсь расскажите, а то не знаю - знаю или не знаю я основы)
Только не нужно предлагать книги, не хочу заного все повторять)
Скорей всего это означает знание основных синтаксических конструкций языка без углубленного знания их семантики.

Например, вы можете написать

C++
1
char *s = "SomeString";
Но не знать семантически, является ли эта конструкция корректной, почему так можно писать, а почему можно писать по-другому

C++
1
const char *s = "SomeString";
В каких случаях первая форма корректна, а в каких символьный литерал обязан преобразовываться к константному указателю и.т.д.

Добавлено через 7 минут
Цитата Сообщение от NightmareZ Посмотреть сообщение
Я вот взял первую попавшуюся программу на C++, которую я писал кому-то на форуме.
Всё понимаешь, что тут написано?
Если да - будем копать дальше.
Если нет - ты не знаешь основ C++.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <iostream>
#include <iterator>
#include <string>
#include <list>
#include <algorithm>
 
class Film
{
public:
    std::string name;
    std::string genre;
 
    friend std::istream& operator>>(std::istream& input, Film& film)
    {
        std::cout << "Input name: ";
        input >> film.name;
        std::cout << "Input genre: ";
        input >> film.genre;
        return input;
    }
 
    friend std::ostream& operator<<(std::ostream& output, const Film& film)
    {
        return output << "Name: " << film.name << std::endl
                      << "Genre: " << film.genre << std::endl;
    }
};
 
int main()
{
    std::list<Film> films(
        (std::istream_iterator<Film>(std::cin)),
         std::istream_iterator<Film>());
    std::cin.clear();
 
    std::cout << "Search. Please input name: ";
    std::string name;
    std::cin >> name;
 
    std::for_each(films.begin(), films.end(), [&name](Film& film) 
        { 
            if (name == film.name)
                std::cout << film;
        });
    return 0;
}
Во-первых, ваш код не корректный, так как в С++ нет таких конструкций, как [&name](Film& film) и т.д.. Так что никто ваш некорректный код понимать не обязан. Более того вы вообще семантически безграмотно пользуетесь алгоритмами, так как для поиска элемента в контейнере следует использовать алгоритм std::find, а не std::for_each, либо std::copy_if, если вы пользуетесь нестандартными средствами,, где указывается выходной итератор вместо std::cin.
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
16.08.2011, 16:33     Что такое основы c++? #11
Цитата Сообщение от Сыроежка Посмотреть сообщение
С++ нет таких конструкций, как [&name](Film& film)
Уже есть. Лямбда-выражения называются.
Сыроежка
Заблокирован
16.08.2011, 16:38     Что такое основы c++? #12
Цитата Сообщение от diagon Посмотреть сообщение
Уже есть. Лямбда-выражения называются.
Что-то я не слышал, чтобы приняли новую редакцию стандарта. Скорей всего вы что-то путаете.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
16.08.2011, 16:41     Что такое основы c++? #13
Цитата Сообщение от Сыроежка Посмотреть сообщение
Что-то я не слышал, чтобы приняли новую редакцию стандарта. Скорей всего вы что-то путаете.
http://www.cyberforum.ru/cpp-experts/thread341611.html
silent_1991
16.08.2011, 16:42
  #14

Не по теме:

diagon, полагаю, речь ведётся о том, что стандарт ещё не принят, хотя финальная версия и утверждена. С учётом этого в C++ (в С++ 2003 года со всеми правками) действительно нет лямбда-выражений.

Сыроежка
Заблокирован
16.08.2011, 16:45     Что такое основы c++? #15
Я так понял, что одобрили черновой вариант стандарта, а сам стандарт еще не принят официально.
silent_1991
16.08.2011, 16:45
  #16

Не по теме:

Как обычно, поспешил))) Вот всё и разрешилось))

asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
16.08.2011, 16:47     Что такое основы c++? #17
Цитата Сообщение от Сыроежка Посмотреть сообщение
Я так понял, что одобрили черновой вариант стандарта, а сам стандарт еще не принят официально.
Вы заблуждаетесь.
Цитата Сообщение от Herb Sutter Посмотреть сообщение
We have an international standard: C++0x is unanimously approved
Финальный драфт был еще год назад, сейчас же его ухвалили, то есть приняли сам стандарт.
Сыроежка
Заблокирован
16.08.2011, 16:51     Что такое основы c++? #18
Цитата Сообщение от asics Посмотреть сообщение
Вы заблуждаетесь.

Финальный драфт был еще год назад, сейчас же его ухвалили, то есть приняли сам стандарт.
Что-то мне сомнительно. Мне представляется, что лишь черновой вариант получил одогбрение. А для принятия стандарта нужно соответствующий митинг, если я не ошибаюсь.

Но в любом случае этот новый стандарт никто еще знать не обязан.
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
16.08.2011, 16:52     Что такое основы c++? #19
Сыроежка, слабо просто признать что сфейлился?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.08.2011, 16:54     Что такое основы c++?
Еще ссылки по теме:

C++ Что такое кодировка
C++ Что такое С++ ?
C++ Найти такое k, что (k-1)! < A < k!

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

Или воспользуйтесь поиском по форуму:
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
16.08.2011, 16:54     Что такое основы c++? #20
Из блога Саттера:
Geneva will take several months to publish it, but we hope it will be published well within the year, and then we’ll be able to call it “C++11.”
т.е. принят, но не опубликован.
Yandex
Объявления
16.08.2011, 16:54     Что такое основы c++?
Ответ Создать тему
Опции темы

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