Board logo

標題: [操作疑難] c++ 完全唔明 [打印本頁]

作者: 找數K    時間: 2012-9-21 19:55     標題: c++ 完全唔明

c++ 完全唔明
  1. #include <string>
  2. using std::string;

  3. class Account
  4. {
  5. public:
  6. //constructor
  7. Account(int, int, int);
  8. // set/get function for variables
  9. int getBalance();
  10. void setBalance(int);
  11. int getDebit();
  12. void setDebit(int);
  13. int getCredit();
  14. void setCredit(int);

  15. private:
  16. int balance;
  17. int debit;
  18. int credit;
  19. }
複製代碼
經CHing教路下既class code
但係呢..
唔明點解private度
係細楷
咁咪又係第2個變數?
作者: KinChungE    時間: 2012-9-21 19:57

因為兩個名完全唔match都得

之後響.cpp file要....
int Account::getBalance() {
return balance;
}
作者: 找數K    時間: 2012-9-21 20:01

回復 2# KinChungE


唔明
我return既意思係
將balance個數值
去番getBalance
作者: KinChungE    時間: 2012-9-21 20:01

exactly
嚴格黎講, 係return翻俾call getBalance既地方
作者: 找數K    時間: 2012-9-21 20:05

回復 4# KinChungE



Account myAccount1(100);
cout <<"myAccount1: Balance = $" << myAccount1.getBalance() << endl;
cout <<endl;

呢句既意思
係唔係開新object
myAccount
balance 係100
之後再get番
作者: KinChungE    時間: 2012-9-21 20:06

回復  KinChungE



Account myAccount1(100);
cout
kabhei 發表於 2012-9-21 20:05

exactly
不過你個constructor響.h係3個int
你呢度得1個int
會error喎

其實debit = 提款, credit = 存款, 唔應該係variable
作者: 找數K    時間: 2012-9-21 20:07

回復 6# KinChungE


但係得1個int
我又唔可以開埋balance 同debit
我可唔可以1開波宣告debit同credit 係0左先
咁得唔得
作者: KinChungE    時間: 2012-9-21 20:08

回復  KinChungE


但係得1個int
我又唔可以開埋balance 同debit
我可唔可以1開波宣告debit同cred ...
kabhei 發表於 2012-9-21 20:07


??
void debit(int amount) {
balance -= debit;
}

void credit(int amount) {
balance += credit;
}

唔需要3個數
作者: 找數K    時間: 2012-9-21 20:09

回復 8# KinChungE


我想問下
點樣去死最快
係wo
出1個amount咪得lor
之後宣告3個變數
作者: KinChungE    時間: 2012-9-21 20:10

回復  KinChungE


我想問下
點樣去死最快
係wo
出1個amount咪得lor
之後宣告3個變數 ...
kabhei 發表於 2012-9-21 20:09


private入面唔需要credit/debit啦
constructor亦只需1個parameter
作者: 找數K    時間: 2012-9-21 20:10

回復 8# KinChungE


唔係wo
我見佢test個method下面
有句咁既野
myAccount1.debit(500);
咁應該係要開3個
作者: KinChungE    時間: 2012-9-21 20:11

回復  KinChungE


唔係wo
我見佢test個method下面
有句咁既野
myAccount1.debit(500);
咁應該係要 ...
kabhei 發表於 2012-9-21 20:10


冇需要
作者: 找數K    時間: 2012-9-21 20:11

回復 10# KinChungE


唔得
佢要用呢2個
myAccount1.credit(100);
myAccount1.debit(500);
作者: KinChungE    時間: 2012-9-21 20:12

本帖最後由 KinChungE 於 2012-9-21 20:13 編輯
回復  KinChungE


唔得
佢要用呢2個
myAccount1.credit(100);
myAccount1.debit(500); ...
kabhei 發表於 2012-9-21 20:11



以我既寫法已經run到了

提示:
  1. #include <string>
  2. using std::string;

  3. class Account
  4. {
  5. public:
  6. //constructor
  7. Account(int);
  8. // set/get function for variables
  9. int getBalance();
  10. void debit(int);
  11. void credit(int);

  12. private:
  13. int balance;
  14. }
複製代碼

作者: 找數K    時間: 2012-9-21 20:12

回復 12# KinChungE


但係佢myaccount個class下面既debit wo..
作者: 找數K    時間: 2012-9-21 20:12

回復 14# KinChungE


等我睇下本notes先
佢好似話要開3個
作者: KinChungE    時間: 2012-9-21 20:13

回復  KinChungE


等我睇下本notes先
佢好似話要開3個
kabhei 發表於 2012-9-21 20:12


#14已經係.h既solution

估計佢係要開3個member function (getBalance, debit, credit), 唔係variable
作者: 找數K    時間: 2012-9-21 20:13

回復 14# KinChungE


佢話要3個member function
作者: KinChungE    時間: 2012-9-21 20:14

回復  KinChungE


佢話要3個member function
kabhei 發表於 2012-9-21 20:13


bingo
係function不是variable
public內, 唔計constructor, 已經有齊
作者: 找數K    時間: 2012-9-21 20:15

回復 14# KinChungE


#include <string>
using std::string;

class Account
{
public:
//constructor
Account(int);
// set/get function for variables
int getBalance();
void debit(int);
void credit(int);

private:
int balance;
}


之後.cpp
int amount;
amount = balance - debit + credit;

作者: KinChungE    時間: 2012-9-21 20:18

回復  KinChungE


#include
using std::string;

class Account
{
public:
//constructor
Account(i ...
kabhei 發表於 2012-9-21 20:15


.cpp要分開寫個function

#include "Account.h"

Account::Account(int _______) {
...
}

int Account::getBalance() {
...
}

void debit(int ______) {
...
}

void credit(int ______) {
...
}
作者: 找數K    時間: 2012-9-21 20:20

回復 21# KinChungE


我明左好多野啦
原來1直係我諗多左
但係void有咩用
作者: KinChungE    時間: 2012-9-21 20:20

回復  KinChungE


我明左好多野啦
原來1直係我諗多左
但係void有咩用 ...
kabhei 發表於 2012-9-21 20:20


只想佢run一段code, run完唔需要有答案既, 就用void
作者: 找數K    時間: 2012-9-21 20:22

回復 23# KinChungE



account:getbalance()
{
return balance;
}
既功能
就係從class裡面提從個balance
作者: KinChungE    時間: 2012-9-21 20:24

回復  KinChungE



account:getbalance()
{
return balance;
}
既功能
就係從class裡面提從個balance:? ...
kabhei 發表於 2012-9-21 20:22


正確

而因為balance係private, 而getBalance係public, 所以...
main()入面, 係用myAccount.getBalance()
而非myAccount.balance
作者: 找數K    時間: 2012-9-21 20:30

回復 25# KinChungE


但係debit同credit無set到get 變數wo
咁點提取
作者: KinChungE    時間: 2012-9-21 20:32

回復  KinChungE


但係debit同credit無set到get 變數wo
咁點提取
kabhei 發表於 2012-9-21 20:30


void Account::debit(int amount) {
balance -= amount;
}

不是完成了碼?

class內既function可以用翻自己其他variable的
作者: 找數K    時間: 2012-9-21 20:34

回復 27# KinChungE


我明啦
void 左
咁就唔會影響佢裡面個debit既數值
如果無void
個balance就會轉左做新既amount
作者: 99bbq    時間: 2012-9-21 20:42

void 係唔洗return
平時int 咪要return 一個variable
例如return 0 ; return balance;
balance 會係你CALL Account myAccount1(100)個刻開始用到。
一直去到個program run 完為止
作者: KinChungE    時間: 2012-9-21 20:42

回復  KinChungE


我明啦
void 左
咁就唔會影響佢裡面個debit既數值
如果無void
個balance就會轉左 ...
kabhei 發表於 2012-9-21 20:34


不是
你明唔明
balance -= amount;
is equivalent to....
balance = balance - amount;
作者: 找數K    時間: 2012-9-21 20:42

回復 29# 99bbq


分別就係
void左 用完就唔會再變
但係int 就會由頭run到尾
keep住變
作者: 找數K    時間: 2012-9-21 20:43

回復 30# KinChungE


唔知...
佢無教呢個簡寫
作者: KinChungE    時間: 2012-9-21 20:48

回復  99bbq


分別就係
void左 用完就唔會再變
但係int 就會由頭run到尾
keep住變 ...
kabhei 發表於 2012-9-21 20:42


唔係, void左一樣變
只係爭在最尾冇野return

credit同debit就係要變喎, 提款點會balance唔變?
作者: 找數K    時間: 2012-9-21 20:49

回復 33# KinChungE


寫緊.cpp
Account::Account(int)
{
        Account:getBalance();
{
        return balance();
}
        If (Balance < 0);
        cout << "Error: Initial balance cannot be negative." << endl;
        int getdebit();
        {
                return debit();
}
        If ( debit > Balance);
        cout << "Debit amount exceeded account balance" << endl;
       

2個error
作者: 99bbq    時間: 2012-9-21 20:51

return 唔會變任何野,只係會將function入面個數扔返出來
而void 係無野扔出來
例如
  1. int getAmount(int amount)
  2. {
  3.      return 0;
  4. }
  5. void getAmountVoid(int amount)
  6. {
  7. }
  8. int main(int argc, char **argv)
  9. {
  10.      int amount = 10;
  11.      //amount is 10
  12.      amount = 5;
  13.      amount =  setAmount(amount);
  14.      //amount is 0 , assigned value from the funcion
  15.      //Cannot compile if the line below is uncommented, because compiler cannot get value from void function
  16.      //amount = getAmountVoid(amount)
  17. }
複製代碼

作者: KinChungE    時間: 2012-9-21 20:52

回復  KinChungE


寫緊.cpp

2個error
kabhei 發表於 2012-9-21 20:49


getBalance個function分開寫
唔係俾constructor包住
作者: 找數K    時間: 2012-9-21 20:53

回復 35# 99bbq



唔怪之得
我見到example要打多句
void gradebook::setCourseName (string name_
{
courseName = name;
}
作者: 99bbq    時間: 2012-9-21 20:53

其實你有無學到用FUNCTION先,
如果無就開始用CLASS 其實係未學行先學走。
作者: KinChungE    時間: 2012-9-21 20:54

其實你有無學到用FUNCTION先,
如果無就開始用CLASS 其實係未學行先學走。
99bbq 發表於 2012-9-21 20:53


佢地EIE係淨教佢地個class要咁打
冇教何謂function
作者: 找數K    時間: 2012-9-21 20:55

回復 39# KinChungE
回復 38# 99bbq


function咩黎?
我都唔知佢做緊咩
佢份lab叫我地打class
作者: KinChungE    時間: 2012-9-21 20:57

回復  KinChungE
回復  99bbq


function咩黎?
我都唔知佢做緊咩
佢份lab叫我地打class  ...
kabhei 發表於 2012-9-21 20:55


你咪問左我, 何謂function, 何謂variable囉
作者: 99bbq    時間: 2012-9-21 20:57

看來要重頭學一次。
作者: 找數K    時間: 2012-9-21 20:58

回復 41# KinChungE


就係個個
int()
同埋個個
getvara
作者: KinChungE    時間: 2012-9-21 20:59

回復  KinChungE


就係個個
int()
同埋個個
getvara
kabhei 發表於 2012-9-21 20:58


以你用緊既class為例
public入面既野, 每一個都係function
作者: 找數K    時間: 2012-9-21 20:59

回復 42# 99bbq


我無學過
佢第1堂教cout / cin
if then else
但係下堂就教class
作者: KinChungE    時間: 2012-9-21 20:59

看來要重頭學一次。
99bbq 發表於 2012-9-21 20:57


咪重頭學緊囉
佢地岩岩先開學咋嘛
作者: 找數K    時間: 2012-9-21 20:59

回復 44# KinChungE



呢個我明
但係我都係唔識寫
睇黎要多d練習先得
作者: ksleung    時間: 2012-9-21 21:42

INT係代表咩野/.\?
作者: 找數K    時間: 2012-9-21 21:42

回復 48# ksleung


integer...
你仲新過我wo
作者: ksleung    時間: 2012-9-21 21:43

係..岩岩先接觸..
作者: 找數K    時間: 2012-9-21 21:44

回復 50# ksleung


你又係poly
作者: ksleung    時間: 2012-9-21 21:46

回復 51# kabhei


    中6...
作者: wong00000018    時間: 2012-9-21 23:04

回復  ksleung


你又係poly
kabhei 發表於 2012-9-21 21:44


買本書自學下la,好基本,我中二就自學左
作者: 找數K    時間: 2012-9-22 08:40

回復 53# wong00000018


你厲害
我個時中二去左學php
因為我知道我中四~中五要讀多媒體設計
點知大學又要再店programming
作者: KinChungE    時間: 2012-9-22 22:36

回復  wong00000018


你厲害
我個時中二去左學php
因為我知道我中四~中五要讀多媒體設計:fai ...
kabhei 發表於 2012-9-22 08:40


多媒體設計, HTML?





歡迎光臨 電腦領域 HKEPC Hardware (https://h2.hkepc.com/forum/) Powered by Discuz! 7.2