亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

談跨平臺C++動態連接庫的實現

2019-11-17 05:07:45
字體:
來源:轉載
供稿:網友

  我對與solaris ,hp ,windows這三個平臺的動態庫的實現,進行了探索,對于soloaris,hp等Unix平臺來講,主要是make文件的制作,而Windows下還需要對類頭進行修飾.

  本列主要實現了一個動態庫和一個調用動態庫的運行程序,動態庫包括mytime.h ,mytime.cpp , 在windows下還需要dllt1.cpp ,這個包含動態庫的DllMain入口函數,

  StdAfx.cpp ,stdAfx.h是與預編譯相關的文件. 運行程序包括dy.cpp 包括對動態庫的調用。

  下面先談Unix下的編譯指令.

  一. hp平臺下

  在hp下使用hp自帶的aCC編譯器

rm *.o
rm *.sl
aCC +z mytime.cpp //+z生成動態庫需要的*.o文件

aCC -b -o libmy.sl mytime.o //-b生成動態庫 ,-o libmy.sl 表示生成動態庫的名稱為libmy.sl
aCC dy.cpp libmy.sl //用dy.cpp libmy.sl生成可執行程序,默認為a.out,也可以用 –o指定名稱
  二. solaris平臺下

  在soloaris下用workshop帶的 CC .

CC -c mytime.cpp //-c 生成動態庫需要的*.o文件
CC -G -o libmy.so mytime.o ////-b生成動態庫,名稱為libmy.so
CC -Bdynamic -o myee libmy.so dy.cpp //生成可執行程序myee

ln -s /eXPort/home/hurh/tdll/libmy.so /lib // solaris下在運行前要用root用戶配置動態庫libmy.so
  下面再談談Windows下的動態庫需要考慮的問題,用VC編譯。

  主要談動態庫頭文件mytime.h 的聲明

#ifndef MYTIME_H
#define MYTIME_H

#ifndef WIN32
 #define DLLT_API __declspec(dllexport)
#else
 #ifdef JESTERDLL
  #define DLLT_API __declspec(dllexport)
 #else
  #define DLLT_API __declspec(dllimport)
  #PRagma comment(lib, "dllt1.lib")
 #endif
#endif

strUCt DATETYPE
{
 int year;
 int mon;
 int day;
};

struct TIMETYPE
{
 char hour;
 char min;
 char sec;
};

int DLLT_API getdate(DATETYPE *d);
int DLLT_API gettime(TIMETYPE *t);

class DLLT_API gqlass{
 public:
  int ineid;
  void setneid(int neid);
  gqlass();
  ~gqlass();
};

#endif
  宏WIN32, JESTERDLL 需要在動態庫編譯中用指令 –D 指定。 對于動態庫需要導出的類或函數需要用修飾__declspec(dllexport),而對于引用程序需要用__declspec(dllimport) 修飾,這就是我們聯合WIN32, JESTERDLL所達到的目的, 動態庫的名稱為dllt1.dll 假如有了 #pragma comment(lib, "dllt1.lib") 就不需要在make文件指定需要連接dllt1庫了.

  附部分源代碼:

//mytime.cpp
#include"stdafx.h"
#include "time.h"
#include "mytime.h"

int getdate(DATETYPE *d)
{
 long ti;
 struct tm *tm;
 time(&ti);
 tm=localtime(&ti);
 d->year=tm->tm_year+1900;
 d->mon=tm->tm_mon+1;
 d->day=tm->tm_mday;
 return 0;
}

int gettime(TIMETYPE *t)
{
 long ti;
 struct tm *tm;
 time(&ti);
 tm=localtime(&ti);
 t->hour=tm->tm_hour;
 t->min=tm->tm_min;
 t->sec=tm->tm_sec;
 return 0;
}
gqlass::gqlass()
{
 ineid=0;
}
gqlass::~gqlass()
{

}

void gqlass::setneid(int neid)
{
 ineid=neid;

}

//dy.cpp

#include"stdafx.h"
#include "stdio.h"
#include "../dllt1/mytime.h"
int main()
{
 DATETYPE d;
 TIMETYPE t;
 void *dp;
 char *error;

 puts("動態鏈接庫應用示范");

 getdate(&d); /* 調用此共享函數 */
 printf("當前日期: %04d-%02d-%02d/n",d.year,d.mon,d.day);

 gettime(&t); /* 調用此共享函數 */
 printf("當前時間: %02d:%02d:%02d/n",t.hour,t.min,t.sec);
 gqlass gq;
 printf("before setneid gq.ineid=%d/n",gq.ineid);
 gq.setneid(123);
 printf("after setneid gq.ineid=%d/n",gq.ineid);

 return 0;
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩成人xxxx| 国产精品视频999| 国a精品视频大全| 欧美理论在线观看| 亚洲淫片在线视频| 在线一区二区日韩| 国产一区二区欧美日韩| 精品欧美aⅴ在线网站| 在线播放国产一区二区三区| 欧美日韩成人黄色| 欧美巨乳在线观看| 亚洲精品国产精品乱码不99按摩| 精品久久久久久久久久国产| 亚洲午夜精品久久久久久性色| 色yeye香蕉凹凸一区二区av| 成人精品视频久久久久| 日韩av在线免费观看| 性欧美xxxx| 精品呦交小u女在线| 亚洲福利视频免费观看| 日韩电影免费在线观看中文字幕| 日韩在线观看高清| 日韩av一卡二卡| 日韩免费在线播放| 日韩精品中文字幕视频在线| 国产一区欧美二区三区| 91国产中文字幕| 色综合导航网站| 国产精品久久视频| 亚洲成人黄色在线| 日韩成人av在线播放| 欧美黑人国产人伦爽爽爽| 亚洲国产天堂久久综合网| 精品一区二区三区电影| 亚洲2020天天堂在线观看| 毛片精品免费在线观看| 久久精品这里热有精品| 一区二区三区视频免费| 久久噜噜噜精品国产亚洲综合| 亚洲区bt下载| 色阁综合伊人av| 热久久免费视频精品| 欧美日韩国产成人| 韩曰欧美视频免费观看| 亚洲国产精品高清久久久| 国产这里只有精品| 91亚洲永久免费精品| 久久av在线播放| 日产精品久久久一区二区福利| 久久国产精品久久久久久久久久| 九九精品在线视频| 欧美人成在线视频| 最近2019年中文视频免费在线观看| 欧美在线不卡区| 日韩精品一区二区三区第95| 日韩黄色高清视频| 成人福利在线视频| 亚洲国产天堂久久综合网| 久久久亚洲欧洲日产国码aⅴ| 久久在精品线影院精品国产| 亚洲天堂网在线观看| 久久久免费精品视频| 久久久精品亚洲| 日韩av网站在线| 亚洲sss综合天堂久久| 国产91ⅴ在线精品免费观看| 日本精品va在线观看| 国产亚洲精品成人av久久ww| 久久精品国产2020观看福利| 亚洲图片欧美午夜| 久久精品视频播放| 亚洲精品在线不卡| 欧美成人免费一级人片100| 欧美中文字幕在线观看| 久久久精品久久久| 亚洲福利视频在线| 欧美一区二区大胆人体摄影专业网站| 亚洲精品视频在线观看视频| 国产欧美一区二区| 91免费电影网站| 亚洲一区中文字幕在线观看| 久久综合网hezyo| 中文字幕亚洲欧美| 久久中文精品视频| 亚洲视频综合网| 欧美激情在线观看| 欧美成人亚洲成人日韩成人| 成人欧美一区二区三区在线| 欧美大尺度激情区在线播放| 日韩免费av片在线观看| 国产中文字幕91| 亚洲一区二区中文| 97在线视频免费看| 久久久久久久色| 成人444kkkk在线观看| 日韩精品在线观看网站| 日韩精品免费在线视频观看| 欧美成人精品三级在线观看| 秋霞成人午夜鲁丝一区二区三区| 爽爽爽爽爽爽爽成人免费观看| 欧美一级视频在线观看| 美女av一区二区三区| 欧美大片免费观看在线观看网站推荐| 丁香五六月婷婷久久激情| 自拍偷拍亚洲一区| 久久艳片www.17c.com| 欧美大片网站在线观看| 成人激情在线观看| 日韩中文字幕在线视频播放| 久久久久久成人精品| 欧洲s码亚洲m码精品一区| 亚洲第一页自拍| 26uuu另类亚洲欧美日本老年| 国产精品pans私拍| 成人伊人精品色xxxx视频| 日韩免费中文字幕| 法国裸体一区二区| 亚洲色无码播放| 成人免费福利在线| 国产亚洲精品日韩| 国产日韩在线免费| 亚洲日本欧美日韩高观看| 欧美黑人巨大精品一区二区| 久久频这里精品99香蕉| 精品国产福利视频| 亚洲最大的av网站| 欲色天天网综合久久| 国产精品99久久久久久白浆小说| 国产精品久久久久久久久免费看| 中文字幕日韩专区| 国产精品久久久久久久久久尿| 国产成人精品在线视频| 日韩在线国产精品| 欧美性xxxxhd| 国模吧一区二区三区| 亚洲精品在线看| 日韩成人在线网站| 欧美最猛性xxxxx亚洲精品| 精品久久久久久中文字幕一区奶水| 色婷婷av一区二区三区久久| 国内精品久久久久久久久| 亚洲欧美精品中文字幕在线| 久久亚洲成人精品| 美女视频久久黄| 久久久久久久久久久久久久久久久久av| 欧美精品精品精品精品免费| 亚洲成人网在线| 91国内在线视频| 亚洲国产欧美自拍| 欧美黄色三级网站| 91香蕉亚洲精品| 国产精品扒开腿做爽爽爽男男| 亚洲天堂第一页| 欧美成人精品影院| 亚洲欧美另类中文字幕| 亚洲在线免费视频| 亚洲黄在线观看| 亚洲精品视频免费在线观看| 欧美影院久久久| 狠狠躁18三区二区一区| 尤物九九久久国产精品的特点| 精品福利一区二区| 国产福利精品在线| 国产欧美在线视频|