forward-declaration

    -1熱度

    2回答

    即使我期待編譯器抱怨說它不知道Foo的大小,下面的代碼也會編譯。但是,如果我用Bar的前向聲明替換#include,則由於這個原因它不會編譯。 我知道Foo是絕對只有前向聲明,因爲如果Foo* myfoo;更改爲Foo myfoo;那麼它不會編譯。爲什麼這個錯誤只發生在一種類型的對象中,而不是另一種類型的對象? 使用Visual Studio Express的2013年 #include "Bar

    0熱度

    1回答

    以下是我的頭文件 #ifndef _ASYNCHRONOUSCLASS_H #define _ASYNCHRONOUSCLASS_H #include "stdafx.h" #include <windows.h> typedef int (*functionCall)(void *); typedef void * voidPtr; class AsynchronousFunct

    3熱度

    3回答

    在test.h向前申報值分配類給我一個錯誤,struct Incomplete是我在前面聲明的寫g++ main.cpp test.h -o main.o。 但是,如果我將std::map<int, Incomplete> member更改爲std::map<int, Incomplete*> member,main.o編譯。爲什麼是這樣?

    1熱度

    2回答

    請考慮以下鏈接列表類型類的示例代碼。我希望聲明一個返回一個迭代器的方法,它是的一個Node*。但是,Node是一個私有嵌套類,所以爲了使typdef,我需要讓編譯器知道有關前向聲明的Node。天真地說,我認爲這兩種都默認爲私人會工作;是這樣的: class List { class Node; typedef Node* Iterator; public: Lis

    1熱度

    2回答

    我正在編寫代碼混淆工具作爲我的碩士論文的一部分,並且遇到了一些問題。 我使用libemu模擬x86指令,我想讀取包含十六進制代碼的輸入文件並將指令存儲在向量中。在libemu中,指令由struct emu_instruction表示,我也想在我的程序中使用這個結構,因爲libemu也提供了一個解析器。這是我想使用它: emulator.cpp std::vector<struct emu_inst

    0熱度

    1回答

    友元函數向前聲明 我試圖定義一個類提取朋友的函數成員與類Descripteur,但我編譯時出現以下錯誤: *Descripteurs.h:24:57: error: invalid use of incomplete type ‘class Extraction’ friend void Extraction::globalSet(Descripteurs document); Descripte

    0熱度

    1回答

    這個程序的工作原理,但是我如何使這個程序在沒有UList.H中的前向聲明的情況下工作。它會給我錯誤,如果我刪除它們。如果你想看到這些錯誤,請在這裏檢查我的其他問題https://stackoverflow.com/questions/23278943/how-to-implement-sort-functions-using-vectors。 UList.h #ifndef PROJ_ULIST_

    3熱度

    1回答

    。如果有人能夠指引我正確的方向,或解釋他們之間的差異,那將是非常值得讚賞的。 以下是我處理的數據結構的樣本; 存在1個父母,1個子父母&很多不同兒童類型。即每個父母每個子父母有許多子女。有些兒童需要訪問其他兒童對象。兒童將使用相似的功能,即ParseSelf /顯示/保存/編輯。如果孩子得到改變(即編輯/保存),還需要在SubParent更新數據,家長&可能是其他兒童。 我想知道什麼是執行這樣的最

    0熱度

    1回答

    我已閱讀有用的文章"When to use forward declaration?"。 但是,我留下了一個問題。在這種情況下,我可以在標題中使用前向聲明,但不在cpp中是否有益處,它是什麼?

    3熱度

    2回答

    我現在正在重新分解我正在處理的C++庫(主要是legacy),並且我試圖最小化include指令和遞歸依賴關係這些內含物導致了這種情況 此外,爲了使向前聲明處理整齊,方便,我保持每庫fwd.h,(如在STD iosfwd),使圖書館的客戶的生活更輕鬆 有沒有的情況下,包括應首選時(**兩種情況下編譯)?** 我對前向宣言更可取的學校書說明不感興趣。也許有一點,前鋒宣言是頸部疼痛。 std,boos