JUST DO IT ~

          我只想當(dāng)個程序員

          c++ 全局變量定義在那里?

          我老是搞錯.

           

          boy.h

          class Boy

           

          boy.cpp

          Boy  g_boy;

           

          使用全局變量

          Collection.h

          #include “boy.h”

          extern Boy g_boy;

           

          似乎更優(yōu)雅的方式

          #ifdef  _BOY__HH__
          extern  Boy  g_boy ;
          #endif

           

           

          錯誤方式:    定義宏根本解決不了這個問題

          boy.h
          #pragma once
          #ifndef _BOY__HH__
          #define _BOY__HH__ 

          class  boy

          Boy  g_boy;

          #endif

          編譯錯誤

          1> .obj : error LNK2005: "class class 全局變量名 " (?g_CITSCache@@3VMarketCache@@A) 已經(jīng)在 XXX.obj 中定義
          1>  正在生成非 SAFESEH 映像。
          1>D:\XXX.exe : fatal error LNK1169: 找到一個或多個多重定義的符號

           

          等我看了編譯原理再來解釋.

           

          如何防止循環(huán)引用?

          A->b->c->A

          posted on 2013-09-04 09:35 小高 閱讀(340) 評論(0)  編輯  收藏 所屬分類: C

          導(dǎo)航

          <2013年9月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          統(tǒng)計

          常用鏈接

          留言簿(3)

          隨筆分類(352)

          收藏夾(19)

          關(guān)注的blog

          手冊

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 枣阳市| 安康市| 临汾市| 竹北市| 浠水县| 都江堰市| 汾阳市| 永新县| 金阳县| 永和县| 长汀县| 永顺县| 叶城县| 洪泽县| 永丰县| 上饶县| 博罗县| 兴义市| 封开县| 凯里市| 宜昌市| 清流县| 南和县| 无锡市| 宜丰县| 固阳县| 营口市| 红河县| 博罗县| 苏尼特右旗| 临桂县| 芜湖市| 泸西县| 怀宁县| 合作市| 朝阳县| 高淳县| 钟祥市| 广南县| 兴海县| 乌兰浩特市|