先講講格子趣
大家應該都知道他是租格子給別人寄賣東西的店
我第一次看到這種店的時候
我聯想到的是網路遊戲中拍賣所的實體化
再來想到的是拍賣網站的實體化
這告訴我們什麼?
虛擬世界的實體化,可以成為新行業
今天的重點是跑腿幫
我之前看到這個幫人排隊的工作時,沒有聯想到什麼東西
但是今天有聯想了
我聯想到的是網路遊戲中玩家向NPC接任務
任務需要跑很多地點
跟各種不同NPC講話
最後完成任務取得任務獎賞
再來想到的是許多奇幻小說中都會提到的傭兵團和冒險者工會
雇主可以在冒險者工會發包任務,提供任務獎賞
傭兵可以在冒險者工會接受任務,完成任務後取得任務獎賞
事實上,跑腿幫就是一個傭兵團...
目前社會還缺少一個冒險者工會
誰要來創一下新行業?
2008/7/27
c++ header 建立
現在有兩個class 互相使用對方的指標
我把全部的code 放在同一個檔案是可以編譯的
== 程式碼 ==
class B;
class A
{
B* b;
A方法的宣告
};
class B
{
A* a;
B方法的宣告
};
A方法的實作
B方法的實作
== 換成.h 後 ==
A.h:
#pragma once
#include "B.h"
class A
{
B* b;
A方法的宣告
};
B.h:
#pragma once
class A;
class B
{
A* b;
B方法的宣告
};
A.cpp:
#include "A.h"
A方法的實作
B.cpp:
#include "B.h"
B方法的實作
====
標頭檔編譯不能的錯誤訊息是:使用未定義的型別 A
請問該如何修改才能使標頭檔順利編譯?
PS:A方法會呼叫B方法或屬性
B方法會呼叫A方法或屬性
====
解決方法1 by LPH66:
在.cpp中兩個.h都#include進來
解決方法2 by adrianshum (Alien):
a.h:
#pragma once
class B; //forward declaration
#include "b.h"
class A {
private:
B* b;
};
b.h:
#pragma once
class A; //forward declaration
#include "a.h"
class B {
private:
A* a;
};
我把全部的code 放在同一個檔案是可以編譯的
== 程式碼 ==
class B;
class A
{
B* b;
A方法的宣告
};
class B
{
A* a;
B方法的宣告
};
A方法的實作
B方法的實作
== 換成.h 後 ==
A.h:
#pragma once
#include "B.h"
class A
{
B* b;
A方法的宣告
};
B.h:
#pragma once
class A;
class B
{
A* b;
B方法的宣告
};
A.cpp:
#include "A.h"
A方法的實作
B.cpp:
#include "B.h"
B方法的實作
====
標頭檔編譯不能的錯誤訊息是:使用未定義的型別 A
請問該如何修改才能使標頭檔順利編譯?
PS:A方法會呼叫B方法或屬性
B方法會呼叫A方法或屬性
====
解決方法1 by LPH66:
在.cpp中兩個.h都#include進來
解決方法2 by adrianshum (Alien):
a.h:
#pragma once
class B; //forward declaration
#include "b.h"
class A {
private:
B* b;
};
b.h:
#pragma once
class A; //forward declaration
#include "a.h"
class B {
private:
A* a;
};
2008/7/23
訂閱:
文章 (Atom)