浏览 5264 次
锁定老帖子 主题:或许有人不知道的C++一些小细节点
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-03-22
最后修改:2012-03-22
C++ 中的一些鲜为人知的小细节点
1. "<%" "%>" 替代 "{" "}", "&&" "||" "!" 的替代 and or not ... 注: 有木有人见过如下的C++代码么?一下代码是可以通过编译的需要开启 工程树形 C++ -> language -> Disable language extensions 设置为 : Yes(/Za) 如下图: #include <iostream> using namespace std; #define LUANGUAGE_EXTENSIONS #ifdef LUANGUAGE_EXTENSIONS int main() <% for (int i=0; i<5; i++) <% cout << "i: " << i << endl << "(i and 0) : " << (i and 0) << endl << "(i or 0) : " << (i or 0) << endl << "not i : " << not i << endl << "--------------------------" << endl; %> %> #else int main() { for (int i=0; i<5; i++) { cout << "i: " << i << endl << "(i && 0) : " << (i && 0) << endl << "(i || 0) : " << (i || 0) << endl << "!i : " << !i << endl << "--------------------------" << endl; } } #endif 运行结果: 2. 关键字 mutable 在const方法中需要修改数据成员变量 使用mutable关键字修饰 3. C++中的科学计数法表达 1e-4 相当于 0.0001, 1e+3 相当于 1000 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2012-04-05
第一条有点意思,是为了兼容还是神马目的呀?
|
|
返回顶楼 | |
发表时间:2012-04-05
mutable 倒是知道,第一个没见过
|
|
返回顶楼 | |
发表时间:2012-04-09
没意义啊!
|
|
返回顶楼 | |
发表时间:2012-04-09
LZ使用的是什么编译器?第一个能在不同的编译器上编译通过么?
|
|
返回顶楼 | |
发表时间:2012-04-10
grantren 写道 LZ使用的是什么编译器?第一个能在不同的编译器上编译通过么?
可以的, 而且这个是c++ 规范的一部分, 这样做的原因是,兼容不同国家的键盘, 并不是每个国家的键盘上都有 {} & ^ 等等这些字符的。 |
|
返回顶楼 | |