1 / 1 / 1
Регистрация: 08.08.2011
Сообщений: 23
1

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

16.08.2011, 01:49. Показов 4248. Ответов 39
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Точнее, я более-менее понимаю что это, но все же...
Хотелось бы узнать очень подробно что туда входит. Что бы я мог твердо сказать: "Я знаю основы с++!"
Вообщем не только то что туда входит, а и информация об этих "элементах".
Надеюсь расскажите, а то не знаю - знаю или не знаю я основы)
Только не нужно предлагать книги, не хочу заного все повторять)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.08.2011, 01:49
Ответы с готовыми решениями:

Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами?
Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами?

Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа?
Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа?

Что такое хэндлер файла? Что такое файловый указатель?
Что такое хэндлер файла? Что такое файловый указатель?

Что такое заголовочный файл? Что такое файл исходного кода? Рассмотрите назначение каждого из них
Что такое заголовочный файл? Что такое файл исходного кода? Рассмотрите назначение каждого из...

39
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
16.08.2011, 02:30 2
ну это то, что ты узнаешь после изучения и использования языка в практике за пару лет
0
Заблокирован
16.08.2011, 02:59 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;
}
0
1 / 1 / 1
Регистрация: 08.08.2011
Сообщений: 23
16.08.2011, 03:19  [ТС] 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;
}
Теперь мне есть что изучить!))
Если можно еще указать откуда ИМЕННО ЭТО можно узнать?
0
Заблокирован
16.08.2011, 03:41 5
Цитата Сообщение от zombiethegame Посмотреть сообщение
Теперь мне есть что изучить!))
Если можно еще указать откуда ИМЕННО ЭТО можно узнать?
Из любой адекватной книжки по C++.
0
5231 / 3204 / 362
Регистрация: 12.12.2009
Сообщений: 8,113
Записей в блоге: 2
16.08.2011, 10:48 6
Да, NightmareZ прав, сегодня это считается основами (лет 10 -15 назад ситуация была иной).

Цитата Сообщение от zombiethegame Посмотреть сообщение
Если можно еще указать откуда ИМЕННО ЭТО можно узнать?
Я очень настоятельно рекомендую книгу "Философия С++", там 2 тома. Первый полистай, если все знаешь - можешь не читать (хотя там реально интересные вещи есть), второй том читай обязательно - если будет сложно, то начинай с первого.
1
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
16.08.2011, 10:49 7
Kastaneda, Лямбда пока еще не основы.
0
Kastaneda
16.08.2011, 10:55
  #8

Не по теме:

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

0
1 / 1 / 1
Регистрация: 08.08.2011
Сообщений: 23
16.08.2011, 16:07  [ТС] 9
А что было 10-15 лет назад?
А то я тогда еще только родился
0
Заблокирован
16.08.2011, 16:31 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.
0
Higher
1953 / 1219 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
16.08.2011, 16:33 11
Цитата Сообщение от Сыроежка Посмотреть сообщение
С++ нет таких конструкций, как [&name](Film& film)
Уже есть. Лямбда-выражения называются.
0
Заблокирован
16.08.2011, 16:38 12
Цитата Сообщение от diagon Посмотреть сообщение
Уже есть. Лямбда-выражения называются.
Что-то я не слышал, чтобы приняли новую редакцию стандарта. Скорей всего вы что-то путаете.
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
16.08.2011, 16:41 13
Цитата Сообщение от Сыроежка Посмотреть сообщение
Что-то я не слышал, чтобы приняли новую редакцию стандарта. Скорей всего вы что-то путаете.
https://www.cyberforum.ru/cpp-... 41611.html
1
silent_1991
16.08.2011, 16:42
  #14

Не по теме:

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

0
Заблокирован
16.08.2011, 16:45 15
Цитата Сообщение от asics Посмотреть сообщение
Я так понял, что одобрили черновой вариант стандарта, а сам стандарт еще не принят официально.
0
silent_1991
16.08.2011, 16:45
  #16

Не по теме:

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

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

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

Но в любом случае этот новый стандарт никто еще знать не обязан.
0
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
16.08.2011, 16:52 19
Сыроежка, слабо просто признать что сфейлился?
1
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
16.08.2011, 16:54 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.”
т.е. принят, но не опубликован.
1
16.08.2011, 16:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.08.2011, 16:54
Помогаю со студенческими работами здесь

Что такое IIS и что такое PWS? Почему одно без другого не работает?
вот уже второй день пытаюсь немного разобраться в АСП. накидал небольшую тестовую страничку. но с...

Что такое напряжение и что такое сила тока с позиции заряженных частиц
Объясните пожалуйста, что такое напряжение и что такое сила тока с позиции заряженных частиц....

Что такое монитор и что такое мьютекс? Это же разные вещи?
Здравствуйте. В разных айти-статьях по-разному используют эти термины, причём часто их путают друг...

Что такое токен? Что такое сессия? Отличия от куки
Что такое токен и сессии ? в чем отличия от куков ? Безопасно ли использовать куки? можно ли...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru