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

Организация класса (lib.so + header.h) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Cоставить блок-схему по программе http://www.cyberforum.ru/cpp-beginners/thread1173831.html
#include <string.h> #include <dos.h> #include <iostream.h> #include <iomanip.h> #include <vcl.h> #include <stdlib.h> #include <conio.h> struct bus { char FIO_voditel;
C++ Вывести список студентов, которые не имеют ни одной оценки 4 Здравствуйте, друзья. Нуждаюсь в помощи: составить программу для вывода структуры по n студентам с такими данными: фамилия, год рождения, год поступления и оценки по 4 предметам. Вывести список студентов, которые не имеют ни одной оценки 4. С описанием, вводом и выводом структуры все нормально, за исключением того, что при выводе русские символы, почему-то, не выводятся (фамилии студентов,... http://www.cyberforum.ru/cpp-beginners/thread1173808.html
C++ Как вычислить корень уравнения формулой Ньютона?
Здравствуйте, вопрос описан уже в заголовке, могу добавить только свой недоделанный код: #include "stdafx.h" #include "math.h" #include "iostream" using namespace std; int f (int n) { if (n<=1) return 1;
Ошибка при сортировке пузырьком C++
Видимо выход за предел массива, не пойму где ошибка #include <iostream> #include <ctime> #include <cstdlib> using namespace std; int main()
C++ Скопировать из файла F1 в файл F2 строки, кроме той строки, в которой больше всего гласных букв http://www.cyberforum.ru/cpp-beginners/thread1173763.html
Скопировать из файла F1 в файл F2 строки, кроме той строки, в которой больше всего гласных букв
C++ Класс матрицы работа с файлом Разработать для класса динамических матриц методы чтения матрицы из файла текстового формата и записи матрицы в файл текстового формата аналогичной структуры. Формат входного и выходного файлов следующий: первая строка содержит размерность матрицы, далее строки файла содержат список элементов матрицы. Почему програма не компиллируется? #include <iostream> #include <fstream> #include <conio.h>... подробнее

Показать сообщение отдельно
i7otep9wka
1 / 1 / 1
Регистрация: 13.12.2011
Сообщений: 76
12.05.2014, 23:04     Организация класса (lib.so + header.h)
Есть 3 файла:
  1. main.cpp
  2. header.h
  3. lib.so

Задача сделать стек используя контейнер\класс. Я остановился на class.
Мое видиние решения(Осторожно, ошибки!!!):
  • В .h мы записываем прототипы(класс в нашем случае)
  • В .so добавляем код из хедера #include "header.h"
  • В .so записываем методы класса
  • в мейне - дебаг

мой хедер.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
24
25
26
#include <iostream>
#include <vector>
#include <cstdlib>
#include <memory>
 
namespace My_lab2{
    class My_stack{
        private:
            int* arr;
            int max;
            int index;
        public:
            //constructor
            My_stack(int n);                
            //destructor
            ~My_stack();
            //setter
            bool Push(int n);
            //getter
            int Pop (int n);
            //empty_check
            bool Is_empty();
            //full_check
            bool Is_full();
    };
}
Библиотеку компилирую так:
Bash
1
gcc -shared -o lib_back.so lib_back.cpp
Вопросы:
Правильный ли у меня подход?
Подскажите, как сделать метод из .so связанным с его прототипом:
библиотека.so
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
//#
include "header.h"
...
My_lab2::My_stack::bool Push(int n){
                    if (index == max)
                        return (false);
                    else{
                        arr[index] = n;
                        index++;
                        return (true);
                        }
                }
...
Добавлено через 26 минут
Ошибочка в "библиотека.so"
C++
1
bool My_lab2::My_stack::Push(int n)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 21:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru