簡體   English   中英

如何創建類的全局常量-C ++

[英]How to create global constant of a class - C++

我正在嘗試創建一類復數,並希望將虛數單位i創建為常量。 當包含該類時,我希望能夠在任何代碼中使用它。 例如 :

#include "complex.h"
complex c = 2*i;

我試圖用這種方式定義它: public: 。下的complex.h中的static const complex i ,而complex.cpp中的const complex complex::i = complex(0,1) 但是,當我在main.cpp的頂部編寫代碼時,出現未聲明的變量錯誤。

我怎樣才能做到這一點?

注意 :我已經定義了=*運算符

complex.h中聲明extern const complex i

如果不聲明iextern則必須在使用它的每個編譯單元中對其進行定義。 鏈接兩個這樣的編譯單元將產生重復的定義錯誤。

您聲明了complex::i但您嘗試使用i 將您的代碼更改為

complex c = 2 * complex::i;

或創建一個全局常數i (注意:這不是一個好主意;但是您可以在namspace中執行此操作)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM