|
|
1
13
看起来你在问两个问题 治疗&作为一个3长度的整数数组进行测试? 可能最好避免这种情况。这可能是C++标准中定义的一个动作,但即使是,也不可能每个人都能理解你在这里做的事情。我认为,如果您阅读该标准,则不支持此操作,因为可能会填充结构,但我不确定。 有没有更好的方法来访问没有名称的成员? 对尝试使用 offsetof 宏/运算符。这将提供结构中特定构件的内存偏移量,并允许您将点正确定位到该构件。
|
|
|
2
5
不,你不能肯定。编译器可以在结构成员之间自由引入填充。 |
|
|
3
4
增加 JaredPar's answer C++中的另一个选项(不是在C中)是创建指向成员对象的指针:
|
|
|
4
2
您可能正在寻找
|
|
|
5
1
|
|
|
6
0
对create functor使用set方法和boost::bind,这将更改此变量。 |
|
|
7
0
除了其他答案提出的填充/对齐问题外,您的代码违反了严格的别名规则,这意味着它可能会因优化构建而中断(不确定MSVC是如何做到这一点的,但GCC)
考虑一下这个小修改:
|
|
|
8
0
根据本标准第9.2.17段,事实上,将指向struct的指针转换为指向其第一个成员的指针是合法的,前提是该结构是 POD :
|
|
AstralHex · 矩阵乘法代码工作不正常 1 年前 |
|
|
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 1 年前 |
|
|
Die4Toast · 递归调用成员箭头运算符-> 1 年前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 1 年前 |