[英]c++ weird function
我不知道為什么將第三個符號更改為w,這是非常奇怪的表示法(我知道為什么它是第三個符號,但是我不知道它是如何工作的)。
using namespace std;
char napis[] = "ALICE";
char& which(int n){
return napis[n];
}
int main(){
which(2) = 'w';
cout << napis << endl;
return 0;
}
認真拿一本書。
which()
返回對數組第三元素的引用; 通過which(2) = ...
您可以將值分配給該引用所引用的變量。
但是要了解它是如何工作的,您必須了解參考是什么,您應該在書中對此進行解釋。
由於字符串“ ALICE”是一個字符數組,並且數組從索引0開始,因此第二個索引是字符串中的第三個字符。
您還將返回引用而不是char的副本,這就是為什么如果更改字符串的值,字符串也會更改的原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.