有關C++類中資料成員變數定義的一些想法
最近開始學習C++,以前是學C的,對C++新生的類不是很懂,最近在看一些教程,發現有的教程只是簡單的告訴你什麼是類,還有怎麼使用類,但對於類的標準啥的並沒有進行標準化的介紹。
關於C++類中成員變數的定義,一般都是推薦這樣定義:
1.類中的屬性(不是函式)最好定義標準化,並且取名字能讓其他人閱讀你程式碼的時候,能夠一下子就讀懂。例如,有一個類是Teacher類,有屬性 姓名 年齡等,這樣你就可以這樣定義 姓名:string m_strName; m_str是標準化定義的一種推薦方式,m表示member,說明該屬性是屬於類的,str表明該屬性是string類,這樣,在C++工程的其它地方,當我們看到m_strName時候,就很容易的判斷出該變數是類的一個屬性並且是string類;年齡就可以這樣定義:int m_iAge;其中i表示該屬性是int型。
相關推薦
有關C++類中資料成員變數定義的一些想法
最近開始學習C++,以前是學C的,對C++新生的類不是很懂,最近在看一些教程,發現有的教程只是簡單的告訴你什麼是類,還有怎麼使用類,但對於類的標準啥的並沒有進行標準化的介紹。 關於C++類中成員變數的定義,一般都是推薦這樣定義: 1.類中的屬性(不是函式)最好定義標準化,並且取名字能讓其
類中static成員變數定義和宣告
類中static成員變數的定義和宣告:在VS2010中,只能在類外定義同時賦值,在類中宣告。不能再類中宣告時賦值!! #include<iostream> using namespace std; class A { public: static int a
C++怎麼用指標訪問類中私有成員變數。
C++類中的私友成員是不能通指標操作的。但是總有方法可以做到。可以用: 類中Public 成員指標指向私友成員。 這時類外部的成員可以操作Public成員指標,間接的操作類私成員。#include <iostream> using namespace std; c
繼承子父類中的成員變數的記憶體圖解
程式碼 class Fu { int num = 4; } class Zi extends Fu { int num = 5; void show() { System.out.print(this.num+"..."+super.num); } } class Exte
同一個包,同一個類中,成員變數與成員方法的呼叫!
分析範圍:/**同一個包,同一個類中: * 注意:eat1與eat2是方法的過載(方法名相同,引數列表不同與返回值型別無關) * 在同一個.java檔案中可以寫多個類,但是隻能有一個public修飾的類 * 同一個類中同類型的(靜態與非靜態)方法之間可以相互呼叫,例如eat()與sleep(); * 方法1
C++類的其他成員變數及屬性
一 靜態成員變數 1 把一個類的成員說明為 static 時,這個類無論有多少個物件被建立, 這些物件共享這個 static 成員. 2 靜態成員區域性於類,它不是物件成員 #include<iostream> using namespace std; class
C++---類的靜態成員變數和靜態成員函式
class Person { public : Person() { } static int m_Age ; //加入static 就是靜態成員變數,會共享資料; //靜態成員變數,在類內宣告,類外進行初始化; } int Person.m_Age = 0; //類外初始化
C++類的靜態成員變數一定要初始化(分配記憶體)
文章轉載自https://my.oschina.net/u/1537391/blog/219432 我們知道C++類的靜態成員變數是需要初始化的,但為什麼要初始化呢。其實這句話“靜態成員變數是需要初始化的”是有一定問題的,應該說“靜態成員變數需要定義”才是準確的,而不是初始化
模板類中的成員函式定義返回值為類中的typedef型別時候注意
如果模板類中的成員要訪問類中的typedef型別必須加上關鍵字typename來指明它是一個型別。 如一下程式碼中的那個成員函式size。 #include <iostream> #include <string> template&
靜態成員函式不可以訪問類中的成員變數
原因:因為靜態成員函式在類物件構造時沒有分配this指標(非靜態成員函式則具有this指標),相當於是全域性函式,是屬於類的,而類的成員變數只有類物件(例項)能夠訪問,成員變數只有例項化才有意義。 解決辦法:靜態成員函式增加一個類的指標或引用作為引數。如
類中陣列成員變數怎麼初始化,陣列名與指標的區別
使用STL標準模板庫之後,程式設計時已經很少使用陣列和指標,相反,多使用序列容器vector代替之。 (std::vector<int>,建構函式接受const std::vector<int> &vec,拷貝用this->arr= vec 即可)
[c]c語言中可不可以用變數定義陣列的個數
C語言中不可以用變數定義陣列的個數。 原因如下: 由於陣列在定義的時候,系統就會分配對應的儲存單元,如果用變數,系統就不知道該分配多少位元組的儲存單元,就會報錯。 但可以先定義一個希望陣列型別的指標,使用的時候動態申請變數所表示的大小,並賦值給前定義指標,申請成功後就可
mfc中類中的成員變數的呼叫問題
最近遇到了一個問題,在VS2010中建立單文件工程,然後裡面添加了一個對話方塊並在對話方塊上添加了四個按鈕, 為這四個按鈕添加了四個BOOL型的變數,併為他們新增Click訊息響應函式,當按下某個按鈕時只能有一個對應的 BOOL型變數變為TRUE,其它全為F
在linux c++類中的成員函式裡建立多執行緒要注意的地方
如何在linux 下c++中類的成員函式中建立多執行緒 linux系統中執行緒程式庫是POSIX pthread。POSIX pthread它是一個c的庫,用C語言進行多執行緒程式設計我這裡就不多說了,網上的例子很多。但是如何在C++的類中實現多執行緒程式設計呢?如果套
建構函式和解構函式及類中指標成員變數的new和delete
一直對於C++的繼承機制非常疑惑,今天專門研究了一下繼承過程中建構函式、虛構函式、以及對於建構函式初始化的一些問題。入的坑,還望大家少走彎路。 建構函式中new記憶體分配及解構函式delete 大家都知道,當程式中建立一個類指標物件並將其初始化的時候,只要該類有指標成員
C++類中指標成員的管理(值型類、智慧指標)
在使用C++類的時候免不了會遇到類中需要指標成員的時候,但類成員裡面一出現指標就 很容易一不小心碰上各種各樣的麻煩,尤其需要注意的是類物件的初始化和賦值,下面 總結了一些常見解決辦法。 先來看看這樣一個類: #include <iostream&g
java中對類中的成員變數和成員方法的封裝及private關鍵字
package org.westos_05_封裝和private; /* * private: * 私有的,不可訪問的! * 可以修飾成員變數,也可以修飾成員方法 * 特點:被private修飾的成員只能在本類中訪問,那麼需要提供公共訪問方法 * */ class
C++中類的資料成員是字串
可以用分別使用:字元陣列,string類的物件,字元指標表示字串。實現方法略有不同。 #include <iostream> #include <string> using namespace std; class CStudent { private
c++ const、static、static const修飾的類資料成員變數如何初始化
const資料成員變數: const資料成員為整個類所共有,一旦初始化,不允許修改。其初始化方式一:建構函式初始化列表方式(C++98) 示例: //------------main.cpp #include <iostream> #include <string>
Cpp -C++類中成員變數的初始化總結
1. 普通的變數: 一般不考慮啥效率的情況下 可以在建構函式中進行賦值。考慮一下效率的可以再建構函式的初始化列表中進行。 class CA { public: int data; public: CA(); };