zoukankan      html  css  js  c++  java
  • 玄学

    持续更新中..

    /*

    2019-08-22 upd:

    原帖叫“OI学习中需要注意的”,今天看到觉得这个标题太sb了就改了

    然后看了看内容感觉也比较sb就删了一大半

    精简了内容,现在只记录c++的一些与玄学有关的特性,方便查阅,防止爆0

    */

    大量莫名其妙的WA RE元凶集中于此
    主要是C++的一些“特性”导致的

    考前必看!

    左移右移如果涉及到long long一定给常数加上LL,否则会爆int e.g:1LL<<64 

    c++11的std多出许多全局函数,如next(),begin(),end(),你的程序不能使用这些变量名,否则直接CE爆零。但是默认的c++版本并非c++11,所以如果你使用了这些变量,编译器不会报错!在编译选项中加入-std=c++11就可以解决该问题。(然而也不是一劳永逸,c++11能通过编译的c++又不一定能过,,,总之建议都试一下保险)

    建议开启全部编译警告,这样编译器能帮你找出部分bug。加上-O2会提示更多可能的错误

    运算整数时不要信任任何stl!特别是cmath里面的数学函数,非常坑

    比如pow()算整数时大概率误差

    比如abs()整数linux编译过不了(可以引用cstdlib,里面有整数的abs)

    如果遇到了一些完全无法解释的错误,比如说一cout就对注释掉就错之类的奇葩问题,八成是地址越界了,好好检查一下数组!

    关于vector:其实常数很小,可以放心使用。但是一定不要嵌套写高维vector,这样搞常数大的飞起(尤其是写矩阵的时候)

    cout很多时候比printf快得多。

    multiset, multimap等可重STL的erase函数会删除多个元素,可用multiset::erase(multiset::find(x))替代。

  • 相关阅读:
    c#调用dll,::CoInitialize(NULL)出错
    使用 Anthem.NET 的常见回调(Callback)处理方式小结
    主题和皮肤学习
    得到任意网页源代码 (利用WebClient和WebRequest类)
    HTML marquee标签详解
    制作一个简单的天气预报
    CSS中的类class和标识id选择符(.和#号)
    String split '.'
    Map 的 clear() 方法会清空 Map对象
    sqLite 执行查询语句时报错__及SimpleCursorAdapter
  • 原文地址:https://www.cnblogs.com/sun123zxy/p/metaphysics.html
Copyright © 2011-2022 走看看