我正在使用Wt :: WFormModel,其示例代表字段名稱爲static const char*
's。我一次對我的項目進行了一系列更改,其中一項更改了字段表示形式爲constexpr
。很多故障排除之後,我發現這個聲明the WFormModel documentation:爲什麼constexpr沒有獨特的價值或存儲空間?
字段類型爲
const char *
,和而不是字符串比較 識別領域,使用指針比較。因此,你應該確實應該在整個代碼中使用相同的字段常量來引用給定的 字段,並且不能使用C++ 11constexpr
作爲字段常量,因爲 沒有唯一值(因爲它沒有存儲空間) 。
constexpr char*
的表示與const char*
的表示相比如何?
'constexpr'是最高級的,即'constexpr char * p;'與'char * constexpr p;'相同。表示方式沒有區別(標準說'char *'和'char const *'必須具有相同的大小和表示形式)。 –
@PreferenceBean看來不懂constexpr的人是誰寫了引用文本的人! –