當前位置:首頁 » 編程語言 » c語言中類class如何定義
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言中類class如何定義

發布時間: 2023-06-20 04:06:19

⑴ 關於C語言中,類的功能,定義和使用方法

類就是一種東西的集合,類中的成員就是這種東西的屬性。
類的定義方法:
class 類名(自己隨便起)
{
數據類型 成員屬性;
};

⑵ C語言的類怎麼定義

C++才有類,用class關鍵字定義。

⑶ 這個VC++編程名詞「Class」的解釋是什麼

c++——類和類的定義 在面向對象的程序設計中,有經常接觸類、對象等專業名詞;到底什麼是類、什麼是對象呢?在程序又是怎樣運用呢?類是面向對象程序設計的核心,它實際是一種新的數據類型,也是實現抽象類型的工具,因為類是通過抽象數據類型的方法來實現的一種數據類型。類是對某一類對象的抽象;而對象是某一種類的實例,因此,類和對象是密切相關的。沒有脫離對象的類,也沒有不依賴於類的對象。 什麼是類 類是一種復雜的數據類型,它是將不同類型的數據和與這些數據相關的操作封裝在一起的集合體。這有點像C語言中的結構,唯一不同的就是結構沒有定義所說的「數據相關的操作」,「數據相關的操作」就是我們平常經常看到的「方法」,因此,類具有更高的抽象性,類中的數據具有隱藏性,類還具有封裝性。 類的結構(也即類的組成)是用來確定一類對象的行為的,而這些行為是通過類的內部數據結構和相關的操作來確定的。這些行為是通過一種操作介面來描述的(也即平時我們所看到的類的成員函數),使用者只關心的是介面的功能(也就是我們只關心類的各個成員函數的功能),對它是如何實現的並不感興趣。而操作介面又被稱為這類對象向其他對象所提供的服務。 類的定義格式 類的定義格式一般地分為說明部分和實現部分。說明部分是用來說明該類中的成員,包含數據成員的說明和成員函數的說明。成員函數是用來對數據成員進行操作的,又稱為「方法」。實現部分是用來對成員函數的定義。概括說來,說明部分將告訴使用者「干什麼」,而實現部分是告訴使用者「怎麼干」。 類的一般定義格式如下: class <類名> { public: <成員函數或數據成員的說明> private: <數據成員或成員函數的說明> }; <各個成員函數的實現> 下面簡單地對上面的格式進行說明:class是定義類的關鍵字,<類名>是種標識符,通常用T字母開始的字元串作為類名。一對花括弧內是類的說明部分(包括前面的類頭)說明該類的成員。類的成員包含數據成員和成員函數兩部分。從訪問許可權上來分,類的成員又分為:公有的(public)、私有的(private)和保護的(protected)三類。公有的成員用public來說明,公有部分往往是一些操作(即成員函數),它是提供給用戶的介面功能。這部分成員可以在程序中引用。私有的成員用private來說明,私有部分通常是一些數據成員,這些成員是用來描述該類中的對象的屬性的,用戶是無法訪問它們的,只有成員函數或經特殊說明的函數才可以引用它們,它們是被用來隱藏的部分。保護類(protected)將在以後介紹。 關鍵字public,private和protected被稱為訪問許可權修飾符或訪問控制修飾符。它們在類體內(即一對花括弧內)出現的先後順序無關,並且允許多次出現,用它們來說明類成員的訪問許可權。 其中,<各個成員函數的實現>是類定義中的實現部分,這部分包含所有在類體內說明的函數的定義。如果一個成員函數的類體內定義了,實現部分將不出現。如果所有的成員函數都在類體內定義,則實現部分可以省略。 下面給出一個日期類定義的例子: class TDate { public: void SetDate(int y, int m, int d); int IsLeapYear(); void Print(); private: int year, month, day; }; //類的實現部分 void TDate::SetDate(int y, int m, int d) { year = y; month = m; day = d; } int TDate::IsLeapYear() { return(year%4==0 && year%100!=0) || (year%400==0); } void TDate::Print(); { cout<<year<<"."<<month<<"."<<day<<endl; } 這里出現的作用域運算符::是用來標識某個成員函數是屬於哪個類的。 該類的定義還可以如下所示: class TDate { public: void SetDate(int y, int m, int d) {year=y; month=m; day=d;} int IsLeapYear() {return(year%4==0 && year%100!=0) || (year%400==0);} void Print() {cout<<year<<"."<<month<<"."<<day<<endl;} private: int yeay, month, day; } 這樣對成員函數的實現(即函數的定義)都寫在了類體內,因此類的實現部分被省略了。如果成員函數定義在類體外,則在函數頭的前面要加上該函數所屬類的標識,這時使用作用域運算符::。 定義類時應注意的事項 1、在類體中不允許對所定義的數據成員進行初始化。 2、類中的數據成員的類型可以是任意的,包含整型、浮點型、字元型、數組、指針和引用等。也可以是對象。另一個類的對象,可以作該類的成員,但是自身類的對象是不可以的,而自身類的指針或引用又是可以的。當一個類的對象用為這個類的成員時,如果另一個類的的定義在後,需要提前說明。 3、一般地,在類體內先說明公有成員,它們是用戶所關心的,後說明私有成員,它們是用戶不感興趣的。在說明數據成員時,一般按數據成員的類型大小,由小至大說明,這樣可提高時空利用率。 4、經常習慣地將類定義的說明部分或者整個定義部分(包含實現部分)放到一個頭文件中。

⑷ C++中 class的意思

C++中的class是C++不同於C的關鍵所在;
是面向對象中聲明的類;
類是一組數據和對這些數據的操作(函數)的封裝;
類中還可有訪問的許可權的控制
其中private只能由本類中的成員函數訪問;
public可以由類外的成員函數訪問;
protected是受保護的數據成員,在他的子類中(從此類繼承產生的類)protected相當於private也就是其子類的成員函數可以訪問,而其他的類中的成員函數不能訪問;

⑸ 新手關於C語言中類(Classes)的問題,求高手!

#include<iostream>
using namespace std;

class CC
{
//c1,c2是類CC的實例成員變數
char c1,c2;
public:
//CC是構造函數,為對象分配內存後,會調用它對對象進行初始化
CC(char a,char b)
{
c1=a;c2=b;
cout<<"看,調用了構造函數。"<<endl;
}
//~CC是析構函數,當對象的內存即將釋放前,會調用析構函數
//它是由系統自動調用的,你不能顯式調用它
~CC()
{
cout<<c1<<c2<<endl;
}
//disp是一個實例成員函數,耐殲可以訪問本類的所有成族稿員
void disp()
{
if(c1>c2)
cout<<c1<<">"<<c2<<endl;
else
cout<<c2<<">"<<c1<<endl;
}
};
int main(int argc,char *argv[])
{
//首先創建類CC的一個對象c,這會調用構造昌穗沖函數,將'X'傳遞給形參a,'Y'傳遞給形參b
//因此對象c的c1='X',c2='Y',顯示「看,調用了構造函數。」
CC c('X','Y');
//接著調用c的成員函數disp,顯示「Y>X」
c.disp();
//最後當從main函數返回到操作系統前,會釋放對象c的內存,因此會調用析構函數,顯示「XY」
system("PAUSE");
return EXIT_SUCCESS;
}

⑹ C語言中的class的應用

1、C語言里沒有class函數的概念,class是C++中的關鍵字。
2、C++是基於C的一種面向對象擴展,它在C原有結構體(struct)的基礎上,擴充了struct的功能(增加了成員函數,以及訪問控制,繼承等),並增加了class這一新定義。實際上class和struct的唯一區別就是:struct中的默認訪問控制許可權是public,而class的默認訪問控制許可權是private。
struct RecTangle{
int width; int height;
int pos_x; int pos_y;
};
給他添加一些成員函數
struct RecTangle{
int width; int height;
int pos_x; int pos_y;
int Right(); // get right
int Bottom(); // get bottom
int Left(); // get left
int Top(); // get top
};
為了隱藏結構體內的成員,添加訪問控制標識:
struct RecTangle{
private:
int width; int height;
int pos_x; int pos_y;
public:
int Right(); // get right
int Bottom(); // get bottom
int Left(); // get left
int Top(); // get top
};
如果用class來代替struct,則需要添加訪問控制標識.
比如用class來定義類C結構體
class RecTangle{
public:
int width; int height;
int pos_x; int pos_y;
};