为什么在这种情况下静态断言会触发?由于 64 位地址线和 char 是单个字节,这些是否位于同一地址?
#include <type_traits>
int main()
{
char a='a';
char b='b';
static_assert ( &a == &b, " ERROR: Same addr" ) ;
}
main.cpp: In function ‘int main()’:
main.cpp:9:3: error: static assertion failed: ERROR: Same addr
最佳答案
你把逻辑搞反了。 static_assert
当条件为false
时触发,即两个对象没有相同的地址。
关于c++ - 为什么下面的代码中a和b共享相同的地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18726761/