可能重複:
What is the meaning of the term 「free function」 in C++?什麼是獨立功能?
我不知道一個獨立的功能是什麼。
它是在類中還是在main和class之外的普通函數中?
可能重複:
What is the meaning of the term 「free function」 in C++?什麼是獨立功能?
我不知道一個獨立的功能是什麼。
它是在類中還是在main和class之外的普通函數中?
獨立函數只是一個普通函數,它不是任何類的成員,並且位於全局名稱空間中。例如,這是一個成員函數:
class SomeClass
{
public:
SomeClass add(SomeClass other);
};
SomeClass::add(SomeClass other)
{
<...>
}
這是一個獨立的一個:
SomeClass add(SomeClass one, SomeClass two);
所以獨立函數類型必須是類?或者像普通函數一樣,你可以命名任何東西並從main獲取數據? –
@Rex,不,它可以是任何東西,這只是一個隨機的例子;) – SingerOfTheFall
好的,非常感謝你 –
一個獨立的功能通常是
class
或namespace
。strcpy()
)他們應該明智的太多了那些將雜亂的代碼中使用。
一個獨立的功能是一種不依賴於任何可見狀態:
int max(int a, int b) { return a > b ? a : b; }
這裏max
是一個獨立的功能。
獨立功能是無狀態的。在C++中,它們被稱爲免費函數。
這不是一個正式的術語。我們有一個合理的想法,但我們可能會將其稱爲_free_函數。 – MSalters