Cpp: 할당, 자동 증가 및 화살표 조작 부호 등
값을 지정하는 왼쪽 동작 수는 비const 왼쪽 값이어야 합니다.
int i, j, val;
const int ci = i; //ok
1024 = val; //error:
i + j = val; //error:
ci = val; //error:
우결합성
int val1, val2;
val1 = val2 = 0;
상술한 문장은val2를val1에게 부여한다.그런데 다음은 틀렸어요.
int val, *p;
val = p = 0; //error
위:
p=0
성립되었지만 val = p
오류가 발생했습니다.복합 할당 조작부
설명
조작부호
산수 조작부호
+= -= *=/= %=
비트 조작 부호
<<= >>= &= ^=
=
사용 방법
a op= b; //op
... 과 같다
a = a op b;
2. 자증자감
int i = 0, j;
j = ++i; //j = 1, i = 1; ++i
j = i++; //j = 1, i = 2; i++
조합 사용해 인용과 자증
vector::iterator iter = ivec.begin();
while(iter != ivec.end()){
cout << *iter++ << endl;
}
증가된 우선순위는 인용 풀이
*(iter++)
보다 높다.화살표 연산자
C++는 점 작업과 참조를 포함하는 표현식에 화살표 조작자를 제공합니다.
Item *p = &item1;
(*p).func(); //1
p->func(); //2
1, 2등가.
예를 들다
컴파일러:vector 대상을 정의합니다. 모든 요소가string 형식을 가리키는 바늘입니다.각 요소의 내용과 길이를 출력합니다.
string s;
vector v;
while (cin >> s)
{
string *sp = new string(s);
v.push_back(sp);
}
vector::iterator iter = v.begin();
while (iter != v.end()) {
string *tmp = *iter;
cout << tmp->size() << ", " << *tmp << endl;
delete tmp;
iter++;
}
테스트 결과
hello↙
world!↙
^Z↙
5, hello
6, world!
조건 조작부호
cond ? expr1 : expr2;
먼저
cond
의 값을 계산하고true라면 expr1
, 그렇지 않으면 계산expr2
을 한다.중첩하여 사용할 수 있습니다. 예를 들어 세 개의 최대 값을 구하십시오.int max = i > j
? i > k ? i : k
: j > k ? j : k;
그러나 이렇게 하는 것을 추천하지 않습니다. 다음 코드로 바꿀 수 있습니다.
int max = i;
if (j > max)
max = j;
if (k > max)
max = k;
출력 표현식에서 사용 조건 조작자
cout << (i
두 번째 문장은
cout << (i
sizeof 조작부호
객체 또는 유형 이름의 길이를 반환합니다.
sizeof(type_name);
sizeof(expr);
sizeof expr;
쉼표 연산자
쉼표로 구분된 표현식 그룹입니다. 이 표현식은 왼쪽에서 오른쪽으로 계산되며, 결과는 가장 오른쪽의 표현식 값입니다.
int cnt = vec.size();
for(vector::size_type ix = 0; ix != vec.size(); ++ix, --cnt)
vec[ix] = cnt;
매번 순환,ix자증1,cnt자감1.
END.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.