我正在讀一本書,C++入門指南。這些C++術語是否正確?
我想我把它弄到一定程度,我只想澄清幾件事情。
它說,一個
class
是等的數據類型(A數據類型爲int
,char
,等..),並且一個Object
/實例是像一個變量。這是真的?什麼是數據表格?
聲明的哪一部分是聲明?它是
data type
+the variable
,而=
是分配?
我正在讀一本書,C++入門指南。這些C++術語是否正確?
我想我把它弄到一定程度,我只想澄清幾件事情。
它說,一個class
是等的數據類型(A數據類型爲int
,char
,等..),並且一個Object
/實例是像一個變量。這是真的?
什麼是數據表格?
聲明的哪一部分是聲明?它是data type
+ the variable
,而=
是分配?
不完全。
類是「像數據類型」的意思,它是創建對象的模板,但它本身不是您可以使用的對象。
當您使用該模板創建對象的實例時,則可以使用該對象。您可以根據需要創建多個實例 - 您可以將這些實例視爲變量。
例如:
class Person
{
public:
Person() : name("Joe Bloggs") {}
std::string getName() { return name; }
void setName(std::string n) { name = n; }
private:
std::string name;
};
。這是一個人A類定義。這不是一個變量。你不能在它上面調用setName,因爲它還沒有存在。但是當你這樣做時:
int main()
{
Person p, q;
p.setName("Jill Bloggs");
q.setName("Bob King");
std::cout << p.getName() << " " << q.getName() << std::endl;
}
您創建了兩個可以分配,更改和使用的人員實例 - 他們是稱爲實例的變量。
我不知道「數據表」是什麼意思,忽略這一點。
至於聲明 - 聲明指出某個東西的實例將存在。例如,如果你創建一個類,你的頭文件有:
class foo
{
public:
foo(int value);
void bar();
private:
int x;
};
你宣佈你有一個函數調用酒吧返回void,並且有一個名爲X的整數。
沒有爲變量x分配內存,也沒有提供任何定義或bar,所以它們只是聲明。
void foo::bar()
{
//some code
}
和構造definiton foo的,將一個值初始化x和控制它是如何創建的(與初始化列表):
foo::foo(int value) : x(value)
{
//some code
}
源文件會很適合酒吧一樣提供定義爲什麼這麼多降價? – TeaOverflow
我不知道;我認爲這些問題很容易回答,我花時間寫出問題,以便他們能夠有效地返回。 – Ayfiaru
我認爲這有點苛刻。如果他已經閱讀了一本書,他感到困惑,他們是有效的問題。 –