所有新聞群組討論區列表 風禹科技驗證有限公司 Web News Reader

目前新聞群組:tw.bbs.comp.oop

項目 內容
發文者 小呆
日期 2007/8/1 下午 04:13:36
標題 請問.c檔裡可否使用用C++編譯成的程式庫.
檔頭
220 36494 <4VJXf1$75J@bbs.cis.nctu.edu.tw> article
Path: netnews!ctu-gate!ctu-peer!news.nctu.edu.tw!csnews.cs.nctu.edu.tw!news.cs.nctu.edu.tw!cis_nctu
From: xiaudai.bbs@bbs.cis.nctu.edu.tw (小呆)
Newsgroups: tw.bbs.comp.oop
Subject: 請問.c檔裡可否使用用C++編譯成的程式庫.
Date: 01 Aug 2007 08:13:36 GMT
Organization: 交大資科_BBS
Message-ID: <4VJXf1$75J@bbs.cis.nctu.edu.tw>
Mime-Version: 1.0
Content-Type: text/plain; charset="big5"
Content-Transfer-Encoding: 8bit
X-Filename: oop/M.1185956017.A
NNTP-Posting-Host: w3.cipherlab.com.tw
Lines: 31
Xref: netnews tw.bbs.comp.oop:36494
內文
以下例子, 我用C++編譯器編譯a.h和a.cpp, 產生一個 a.lib
然後我在 b.c 裡引用 a.h 並呼叫 func1()
可是編譯 b.c 時, linker 產生一個錯誤, 它無法找到 func1()

我的開發環境是 Visual Studio 2005, 我確定linker 的設定中,
我有把 a.lib加進去


我在a.h裡把 "void func1();" 改成 "extern "C" void func1()"
也無作用

請問各位該如何解決這個問題?   感謝

a.h
=====
void func1();

a.cpp
=====
void func1() {
}


b.c
======
#include "a.h"
void func2() {
   func1()
}
--
* Origin: ★ 交通大學資訊科學系 BBS ★ <bbs.cis.nctu.edu.tw: 140.113.23.3>

基本條件

.Net 原始碼 | ASP.NET News Reader Beta 0.2.9

請參閱

個人資料 | 發表新文章 | 回覆 | 回信 | 轉寄 | 同標題 | 搜尋 | 列印 預覽 直接

重要訊息通知

2007/06/21 由於微軟新聞伺服器移除多數新聞群組 (newsgroup),目前遭移除之群組暫時改為隱藏純瀏覽,若狀況已定案時,將會將隱藏中的群組重新調整。[討論]