一个绝妙的 C++ 语法
  • 板块学术版
  • 楼主_鱼非仙_
  • 当前回复12
  • 已保存回复12
  • 发布时间2021/11/18 11:35
  • 上次更新2023/11/4 00:16:24
查看原帖
一个绝妙的 C++ 语法
346119
_鱼非仙_楼主2021/11/18 11:35

发现一个绝妙的语法,可以把语句转为表达式。例如

int main() {
	return ({
		for (int i = 2; i <= 100000; ++i)
			log_[i] = 1 + log_[i >> 1];
		int T;
		scanf("%d", &T);
		while (T--)
			Solve();
		0;
		});
}

原理是,表达式 ({A; B; ...; Z;}) 会返回 Z 的值(可以为 void()),其中 A, B, ..., Z 是语句。

这样的用法也可以运用于 ifwhilefor 等结构中。

2021/11/18 11:35
加载中...