類的成員函式怎樣在類外定義,格式是什麼

2025-03-24 23:55:23 字數 2093 閱讀 7098

1樓:陶紫雲系南

羨枝橘/2.

類别範本程式設計//(1)定義乙個類别範本point,有兩個私有資料成搭薯員:x,y(變數型別可變);成員函式的定義必須寫在類外//(2)要求編寫的類别範本能夠完成下述main()函式的功能/*int

main()

#includeusing

namespace

std;templateclass

point現兄團在這個程式執行沒有問題,但是怎麼把成員函式的定義在類外呢。

我試了幾次總是有錯。

不知道怎麼把函式正確移到類外去。

謝謝幫忙了。

感激ing

2樓:喜影改騫騫

所謂物件就是客觀事物在計算機中的抽象描述;類是對具有相似屬性和行為的一組物件的統一描述。

類的定義。c++的類是在結構體的基礎上擴充而來的。類是把拍圓清各種不同型別的數襲前據(稱為資料成員)和對資料的操作(成員函式)組織在一起而形成的使用者自定義的資料型別。

c++中,類定義包括類說明和類實現兩大部分。

說明部分提供了對該類所有資料成員和成員函式的描述,而實現部分提供了所有成員函式的實現**。

類定義的一般形式為:

class類名。

private:

資料成員或成員函式。

protected:

資料成員或成員函式。

public:

資料成員或成員函式。

各成員函式的實現**》

說明: class是定義類的關鍵字,類名由使用者自己定名,必須是c++的有效識別符號,但一般首字母大寫。

大括號的部分是類的成員(資料成員和函式成員),它們分成三部分,分別由private、public、proctected三個關鍵字後跟冒號來指定。這三部分可以任何順序出現,且在乙個類的定義中,這三部分並非必須同時出現。(1)如果資料成員或成員函式在類的private部分,那麼在類之外是不能存取的,只有腔指類中的成員函式才能存取private的資料成員和成員函式。

2)在乙個類的public部分說明的資料成員或成員函式可被程式中的任何函式或語句存取,public成員多為成員函式,用來提供乙個與外界的介面,外界只有通過這個介面才可以實現對private成員的存取。

3)在類的protected部分說明的資料成員和成員函式是不能在類之外存取的,只有類的成員函式及其子類(派生類)可以存取protected的成員。

3樓:

c++沒有該功能誒,定義要在一起定義,實現倒是可以在不同的地方實現。c#倒是可以把類拆分到幾個檔案裡,不過c#沒有標頭檔案概念。

4樓:我行我酷

可以再外面定義,但是在類裡面你必須要申明。

返回型別 類名::成員函式名(參數列)

成員函式為什麼有的在類內定義有的在類外定義

5樓:風若遠去何人留

不管是類內定義, 還是類內宣告類外定義,都是合法的。

一般來說,當類成員函式的函式體比較簡短時, 定義在類內,可以減少**量。比如只有一行的。

當函式體較長時,定義在類外, 這樣可以增加類定義的可讀性。相信你也不願意找乙個類成員是如何宣告的,而去翻幾十上百行**。

另外,如果是多檔案工程,尤其是封裝成庫的情況下,為了穩定及保護, 大多數成員會定義在原始檔,而宣告放在標頭檔案。釋出庫的時候保證類內成員實現不會被修改。

6樓:我的名字司耀輝

這個問題,如果要考慮內聯的話,在類內定義的函式不管加不加inline這個關鍵字,都是被認為是行內函數,但是如果在類內宣告在類外定義,就可以不是行內函數。 行內函數一般不是我們期望看到的。還有就是**可讀性比較差,所以最好的方式就是在類內進行宣告,然後在類外進行定義,這樣就可以了。

類的成員函式的定義

7樓:山如不為勒石高

類的成員函式的原型要寫在類體中,原型說明了函式的參數列和返回值型別。而函式的定義一般在類外面,也可以直接在類內部定義。前者與普通函式不同的是,實現成員函式時要指明類的名稱,具體形式為:

返回值型別 類名 ::函式成員名(參數列);

而後者一般為一些短小的函式(5行以內),也就是行內函數。

C 求助什麼叫類體內定義成員函式

class student public void display cou num c 中怎麼理解類內定義的成員函式就是行內函數?當你的class。public成員函式宣告的時候,只要這個函式體當中不存在switch等迴圈語句的時候,則這個函式體無論是在類的內部還是類的外部,這個成員函式在編譯器看來...

c中怎麼理解類內定義的成員函式就是行內函數

在類內定義的成員函式預設為inline,不論前面是否加了inline,當然,是否內聯還是取決於編譯器啦 而在類外定義的成員函式就不是行內函數。c 中怎麼理解類內定義的成員函式就是行內函數?當你的class。public成員函式宣告的時候,只要這個函式體當中不存在switch等迴圈語句的時候,則這個函...

C 成員函式的使用有哪些限制,C 類成員函式什麼情況下必須定義引數?

必須為其指標所指向的物件分配記憶體才可以進行strcpy操作。如果沒有分配記憶體,則 strcpy pname,p 把p複製到 沒有記憶體存放!這可能會導致未知的情況發生,程式會崩潰.以下是修改後的程式。注 用構造分配記憶體 new 必須要用析構 delete 釋放記憶體,否則會造成記憶體洩露 me...