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

структура в dll - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Мобильные платформы и С++ http://www.cyberforum.ru/cpp-beginners/thread351642.html
Я пишу на С++ и хочу сделать прогу под Андроид. Что мне для этого нужно?
C++ #include "stdafx.h" В моем самоучителе по С++ автор пишет, что можно #include <iostream> int main() { int integer1, integer2, sum;, а работает только так#include "stdafx.h" #include <iostream> #include <stdlib.h> cout << "hello world"; cout<<"input number"; cin>> integer1; cout<<"input second number"; http://www.cyberforum.ru/cpp-beginners/thread351641.html
C++ Функция time()
Из учебника Дейтелов, глава 6.7: Функция time (с аргументом 0, как написано в приведенном операторе) текущее время как число секунд, прошедших с полуночи 1 января 1970 года по Гринвичу (GMT). А на что опирается это число секунд? На текущую дату в ОС? Спасибо.
C++ Не срабатывает unique_copy
Что-то у меня сегодня вечер чудес просто таки. Применяю unique_copy, а по выводу результатов вижу что ничего не происходит и копии остаются: int main() { string s; string temp; ostream_iterator<string> print(cout," "); // cout<<"Enter string: "; // getline(cin,s); s="simplesimple";
C++ Доработайте пожалуйста! http://www.cyberforum.ru/cpp-beginners/thread351622.html
#include<stdio.h> #include<conio.h> main() { float xn,xk,dx,k=0,x,a,b,c; float f; printf("vvedite: nachalo funkcii,konec funkcii,shag,a,b,c\n"); scanf("%f%f%f%f%f%f",&xn,&xk,&dx,&a,&b,&c); printf("x f\n"); printf("\n");
C++ Класс массив В общем задание написать шаблон класса массив. #include "stdafx.h" #include <iostream> #include <fstream> using namespace std; template <typename X> class Array { int size; подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
15.09.2011, 11:56     структура в dll
Цитата Сообщение от korez Посмотреть сообщение
как объявить структуру чтобы ее видели все функции?
объявляю ее вне всех функций и все равно не видят.
и как эту структуру сделать видимой для других программ(экспортируемой)?
- проще всего дать повторное объяевление этой структуры уже в исполняемом модуле, юзающем DLL. Вот накидал Simple проект DLL (StructDLL), в которой присутсвует структура
C++
1
2
3
4
5
struct DLLStruct
{
    char sVal[256];
    int iVal;
};
и проекта использующего эту DLL (UseStructDLL), вот листинг main.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
#include <windows.h>
#include <stdio.h>
 
#define IMPORT __declspec (dllimport)
 
#pragma comment(lib,"StructDLL.lib") 
 
struct DLLStruct
{
    char sVal[256];
    int iVal;
};
 
IMPORT void UpdatetStruct(DLLStruct &st);
IMPORT void PrintStruct(DLLStruct st); 
IMPORT DLLStruct GetDLLStruct();
int main()
{
    printf("Program which showes using DLL structures\r\n");
    DLLStruct st;
    UpdatetStruct((st = GetDLLStruct()));
    PrintStruct(st);
    system("pause");
    return 0;
}
Как видишь я дал повторное объявление struct DLLStruct и спокойно пользуюсь ей в программе

[Результат работы]
Program which showes using DLL structures
Enter sVal :fgdgdfg
Enter iVal :215
sVal : fgdgdfg
iVal : 215
Для продолжения нажмите любую клавишу . . .
Вложения
Тип файла: rar StructDLL.rar (7.5 Кб, 21 просмотров)
Тип файла: rar UseStructDLL.rar (17.9 Кб, 18 просмотров)
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru