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

Как продолжить? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Совет по работе с файлами http://www.cyberforum.ru/cpp-beginners/thread302276.html
надо написать программу, которая считывает данные из текстового файла в структуру с 4-мя полями, типа однонаправленный список, а потом выполнять удаление\добавление\поиск элемента из списка, вывод списка. с работой с элементами проблем нет, не знаю как считать из файла готовый список и как его задать в файле
C++ Разработка программы для построения графиков с маркерами. Разработка программы для построения графиков с маркерами в Turbo C. Добавлено через 19 часов 35 минут Кто знает помогите пжл. http://www.cyberforum.ru/cpp-beginners/thread302273.html
Текстовые, бинарные файлы C++
Всем привет) помогите доделать прогу. Вот условие: Написать программу шифрирования/дешифрирования текстового файла, записав таблицу кодировки в бинарный файл, который еще нужно вывести на экран. Закодированную/декодированную информацию записать в новый текстовый файл. Использовать классы. Помогите дописать ф-ции void DisplayFile(char*) и void ReadFile(char*). А также, если несложно, напишите...
Динамические массивы C++
1)Даны упорядоченные списки L1 и L2. Вставить элементы списка L2 в список L1, не нарушая его упорядоченности. 2)Составить программу, которая вставляет в список L за первым вхождением элемента Е все элементы списка L, если Е входит в L.
C++ собственные функции... http://www.cyberforum.ru/cpp-beginners/thread302237.html
Написать программу, в которой создать 3 собственных функции, поместив объявление каждой в отдельный *.hpp файл, а определение – в отдельный *.cpp файл: 1. функция с запросом и вводом необходимых параметров (вызывается из стартовой функции приложения); 2. функция, производящая вычисления (вызывается из главной функции приложения, в соответствии с заданием, желательно из цикла); 3. функция,...
C++ Расшифруйте пожалуйста код конвертера кодировок текста. Linux #include <iostream> #include <fstream> #include <string.h> using namespace std; int statisticArray; //Matrix of converting char ConvertMatrix={ подробнее

Показать сообщение отдельно
Casper-SC
 Аватар для Casper-SC
3465 / 1684 / 173
Регистрация: 27.03.2010
Сообщений: 4,824
Записей в блоге: 1
30.05.2011, 18:43     Как продолжить?
Цитата Сообщение от silent_1991 Посмотреть сообщение
Знание плюсов по сути заключается не в знании синтаксиса, а в знании стандартной библиотеки. А по ней есть отдельные книги, не уступающие в объёме книгам по синтаксису (хотя и в них есть информация по STL, но не в той мере, в какой хотелось бы).
Ну без знания синтаксиса, нет смысла пытаться осваивать работу с стандартной библиотекой. Вообще какие библиотеки там учить надо?
Посоветуйте какую нибудь книгу, в которой описаны эти библиотеки. В будущем почитаю, попрактикуюсь в написании программ. Думаю и автор темы из ответа на этот вопрос почерпнёт для себя полезное.


Цитата Сообщение от Despice Посмотреть сообщение
ну помоему за 21 день разве что синтаксис можно выучить, а не научится програмировать на языке
Поначалу не мог врубиться как же создать свой класс (не дочитав до этого в книге, но очень хотел побыстрей понять смотря примеры на форуме). И ещё не привычно отсутствие подсветки кода как в C#. Видно на скриншоте.
Например одна программа на C# и С++:
Cat.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once
namespace UserClasses
{
    class Cat
    {
    private:
        unsigned int age;
        unsigned int weight;
 
    public:
        Cat(void);
        Cat(unsigned int age, unsigned int weight);
        ~Cat(void);
 
        unsigned int getAge() const;
        void setAge(unsigned int newAge);
 
        unsigned int getWeight() const;
        void setWeight(unsigned int newWeight);
 
        void Meow();
    };
}

Cat.cpp
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 "StdAfx.h"
#include "Cat.h"
 
namespace UserClasses
{
    Cat::Cat(void)
    {
        age = 0;
        weight = 0;
    }
 
    Cat::Cat(unsigned int Age, unsigned int Weight)
    {
        age = Age;
        weight = Weight;
    }
 
    Cat::~Cat(void)
    {
    }
 
    unsigned int Cat::getAge() const //const означает, что метод не может изменять значения класса
    {
        return age;
    }
 
    void Cat::setAge(unsigned int newAge)
    {
        age = newAge;
    }
 
    unsigned int Cat::getWeight() const
    {
        return weight;
    }
 
    void Cat::setWeight(unsigned int newWeight)
    {
        weight = newWeight;
    }
 
    void Cat::Meow()
    {
        std::cout << "Мяу" << std::endl; // =))). Мда-а-а
    }
}

Тут выполнение программы
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "stdafx.h"
#include "Cat.h"
 
using namespace std;
using namespace UserClasses; 
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "Russian");
 
    Cat cat(3, 5);
    cat.Meow();
    cout << "Возраст кошки: " << cat.getAge() << "\nВес кошки: " << cat.getWeight() << endl;
 
    Cat *cat2;
    cat2 = new Cat(7, 4);
    cout << "Возраст кошки: " << cat2->getAge() << "\nВес кошки: " << cat2->getWeight() << endl;
    delete cat2;
 
    system("pause");
    return 0;
}


А вот так на C# (с комментариями к коду)
Cat.cs
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
47
48
49
50
using System; //как в С++ using namespace
 
namespace ConsApp
{
    class Cat
    {
        //Поля
        uint age; //По умолчанию и так private
        private uint weight; //но можно указать явно
 
        //Конструкторы
        public Cat() //конструктор без параметров
        {
            age = 0;
            weight = 0; //хотя по умолчанию эти поля всё равно получают значения 0, можно и не присваивать их в конструкторе
        }
 
        public Cat(uint age, uint Weight) //конструктор с параметрами
        {
            this.age = age; //this явно указывает, что это поле класса, а не переданное в параметре значение
            weight = Weight; //так как поле класса и переданное значение отличаются, то можно не указывать this, но можно и указать, ничего не меняется
        }
 
        //Свойства
        //Ниже видны XML комментарии к свойствам
 
        /// <summary>
        /// Вес
        /// </summary>
        public uint Weight
        {
            get { return weight; }
            set { weight = value; }
        }
 
        /// <summary>
        /// Возраст
        /// </summary>
        public uint Age //можно конечно сделать по два метода доступа к каждому полю, но проще использовать свойства
        {
            get { return age; }
            set { age = value; }
        }
 
        public void Meow()
        {
            Console.WriteLine("Мяу");
        }
    }
}

Выполнение программы
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
using System;
 
namespace ConsApp
{
    class Program
    {
        static void Main(string[] args) //точка входа в приложение должна быть методом класса. В C# нету функций, чистый ООП.
        {
            Cat cat = new Cat(5, 7);
            cat.Meow();
            Console.Write("Возраст кошки: {0}\nВес кошки: {1}", cat.Age, cat.Weight);
            Console.ReadKey(); //Чтобы окно не закрылось сразу
        }
    }
}


На скриншоте видно зачем нужны XML комментарии.
Миниатюры
Как продолжить?  
 
Текущее время: 04:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru