所以我有一个类似的功能(简化示例):
void somefunction(structuraltype *something) {
something->variable = 6;
}
正如您所见,我可以使用 - >轻松访问值
但我意识到我必须使用指针指针而不是单个指针 能告诉我在这种情况下如何获得价值?
void somefunction(structuraltype **something) {
something???variable = 6;
}
答案 0 :(得分:4)
只需取消引用第一个指针即可访问第二个指针,然后您可以使用它来访问对象成员:
void somefunction(structuraltype **something) {
(*something)->variable = 6;
}
答案 1 :(得分:2)
相当于:
void somefunction(structuraltype* something) {
something->variable = 6;
}
是这个
void somefunction(structuraltype* something) {
(*something).variable = 6;
}
您可以为每个间接级别应用它:
void somefunction(structuraltype** something) {
(*(*something)).variable = 6;
}
间接的外层可以始终用->
替换,如:
void somefunction(structuraltype** something) {
(*something)->variable = 6;
}
但是使用对指针的引用可能比指针的引用更常见:
void somefunction(structuraltype*& something) {
something->variable = 6;
}