[英]Relation between static constant member variables and narrowing conversions in C++
使用 GCC 編譯器在 C++20 中編碼。
根據下面顯示的代碼,由於int
到char
的隱式轉換,程序將引發縮小轉換錯誤/警告。 但是,如果我將static const/constexpr
添加到int var {92};
行,程序運行時不會引發任何錯誤/警告。
static const/constexpr
成員變量?constexpr
成員變量?#include <iostream>
class Foo {
private:
int var {92};
public:
void bar() {
char chr {var};
std::cout << chr << '\n';
}
};
int main() {
Foo foo;
foo.bar();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.