-3
A
回答
2
->*
表示法是需要的,因爲list
是指向成員的指針。這裏有一個簡單的例子:
#include <iostream>
struct S {
int a;
int b;
};
int main()
{
// 'ptr' now points to the 'b' member of some 'S' value.
int (S::*ptr) = &S::b;
S *x = new S;
x->*ptr = 5;
std::cout << x->b << '\n';
}
這個程序打印'5'。使ptr
指針的類型爲int (S::*)
,即指向S
結構的某個int
成員的指針。它已初始化爲指向b
成員。
當然,實際做一些理智的對待它,你需要指定S
結構要修改的。這是通過
x->*ptr
這可以解讀爲「這是由ptr
指針取消引用的x
值的成員」來完成。
相關問題
- 1. Javapoet - TypeName - HashMap <String,HashMap <String,List <String> >> generation?
- 2. 嵌套模板(即模板<typename T <typename templateArgumentFor_T >>)
- 3. 專用模板<typename T,模板<typename> class U>
- 4. 對於給定的</p> <pre><code>template <typename...> class P; template <typename...> class Q; template <typename...> class R; template <typename...> class S; </code></pre> <p>包
- 5. 什麼打字.List <~T> [typing.Tuple [int]]是否意味着在Python的打字庫中?</p> <pre><code>>>> from typing import List, Tuple >>> List[Tuple[int]] typing.List<~T>[typing.Tuple[int]] </code></pre> <p>這是什麼類似Java的語法<code>List<~T></code>:
- 6. 檢查列表<Of List<T>>是否包含列表<T>
- 7. IEnumerable <T>和List <T>
- 8. IList <IList<T>>到IReadonlyCollection <IReadonlyCollection <T>>
- 9. 含義值抓<code>R = 0</code>,<code>R = S</code>,<code>R = S*Da</code>含義和<code>kCGBlendMode</code>值如<code>kCGBlendModeClear</code>,<code>kCGBlendModeCopy</code>,<code>kCGBlendModeSourceIn</code>定義
- 10. /*.php$在robots.txt中的含義是什麼?</p> <pre><code>User-agent: * Disallow: /*.php$ </code></pre> <p>那麼它有什麼作用:
- 11. 使用模板<typename>
- 12. 爲什麼它IEnumerable.Empty <T>()而不是IEnumerable <T> .Empty()?
- 13. SomeList <T>:List <T> can not be cast as List <T>?
- 14. 使用>>,>,> |,||,| <,<,<<,<<
- 15. 爲什麼<T擴展Enum <T>&SomeInterface>編譯,但不是<T擴展SomeInterface&Enum <T>>?
- 16. 什麼是什麼是一個使用</p> <p><code>javac -cp classes helloworld.java</code></p> <p>和</p> <p><code>javac -classpath classes helloworld.java</code></p> 在CMD <p>的區別-cp和-classpath
- 17. $(e.target)是<i></i>而不是包含<div>...</div>
- 18. 什麼是C++ C11語法:「= {}」?</p> <pre><code>Obj obj = {}; </code></pre> <p>它能做什麼:
- 19. 什麼是模板<typename T,T t> idiom?
- 20. 爲什麼是List <>。OrderBy LINQ比IComparable + List <>更快。
- 21. Android XML標籤名爲eat-comment,它有什麼用?</p> <pre><code><eat-comment/> </code></pre> <p>它使用的是:
- 22. 爲什麼TakeLast <T>()方法不是在ReplaySubject <T>
- 23. C++ vector <vector <double>>使用typename別名
- 24. 無法創建模板<typename T>矢量<T> ::迭代器,C++
- 25. 人<Person>,什麼是<Person>?
- 26. <f:ajax><h:form>裏面的奇怪行爲<ui:repeat>
- 27. 爲什麼列表<T> .AddRange(IEnumerable的<T>)高於新錶快<T>(IEnumerable的<T>)
- 28. 鑄造其上包含類構件通過以下方式</p> <pre><code>public class ArrayLinearList<T> implements LinearList<T>, Iterable<T> </code></pre> <p>「<T延伸可比<T>>」
- 29. '< T >'是什麼意思是「< T > void someMethod()」?
- 30. 浮動元素<br /><br /><br /><br /><br /\><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
您是否嘗試過自己搜索它?像使用谷歌搜索「C++操作符」並閱讀幾個最重要的結果?那告訴你什麼,以及你不明白的是什麼? – Angew
@Angew,我真的不容易搜索運算符' - > *'。 – Al2O3
「指向成員的指針」是此運算符的名稱:http://en.cppreference.com/w/cpp/language/operator_member_access#Built-in_pointer-to-member_access_operators – mch