-2
(* var)[n]在C++中的含義是什麼?在這段代碼中我知道,它是指從獲得n組的正則表達式匹配的捕獲字符串,但我不明白爲什麼這不起作用:(* var)[n]在C++中意味着什麼
*var[n] //edit: oh duh, that would be a multiplication
什麼了括號?讓我想起了鑄造的,所有3給出了相同的結果:
(char*)filename[0]
const_cast<char*>(filename.c_str())
&filename[0]
但(字符*)和(*它)在不同的地方的星號。
regex expr("[_-]?([a-gA-G]#?(?:-2|-1|[0-8]))");
int found = 0;
for (sregex_iterator it(tagstruct.name.begin(), tagstruct.name.end(), expr), itEnd; it != itEnd; ++it) {
if ((*it)[1] != "") {
notename = (*it)[1];
if (++found >= search_count) {
f = NoteNameToFreq(notename);
break;
}
}
}
'*'用於通過指針變量進行間接尋址。 – Barmar
'* var [n]'與'(* var)[n]'不一樣。下標具有更高的優先級,所以它相當於'*(var [n])'。 – Barmar
'(char *)'是類型轉換。 – Barmar