You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
「rep と REP が両方 define されている」「FOR と REP が両方 define されている」などのとき、たいていどちらかは #define X(i, n) for (int i = 0; i < n; ++ i) でもう一方は #define Y(i, m, n) for (int i = m; i < n; ++ i) だと思うが、初見で自信を持って見分けられるものであってほしい
消す
不便
using namespace std; について:
使う
特にデメリットないので足しておきたい
left とか y0 みたいな名前のグローバル変数を定義できなかったりすると思うけど、そもそもグローバル変数は使うべきでない。不適切なことをすると不適切な結果になるのは当然であり、これは気にしなくてよい
消す
不便なだけだと思う
その他について:
このまま
なにか追加する
例: typedef long long ll;
例: template <class T, class U> using P = pair<T, U>;
The text was updated successfully, but these errors were encountered:
Description
現在のバージョン v4.7.1 の default の
main.cpp
はたいてい次を出力する。この
#include
部分はplatform.system()
と$CXX
で制御されていて、環境によってはbits/stdc++.h
は回避される。template-generator/onlinejudge_template_resources/template/main.cpp
Lines 18 to 25 in dd4d543
全員が満足するものは不可能なので「不満なら申し訳ないが自分でカスタマイズしてね」と言うしかないが、それでもできるだけ多くのユーザにとって使いやすいものにしておきたい。いまのところ現状の
main.cpp
は妥当であると (@kmyk は) 判断しているが、そうでなさそうなら代替案を提案してください。Possible implementations and the analysis
#include
について:#include <bits/stdc++h>
を使う#include <bits/stdc++h>
を避ける (include は必要最小限に留める)#include <bits/stdc++h>
を避ける (よく使う標準ヘッダをいくつか選んで include しておく)#include <bits/stdc++h>
を避ける (すべての標準ヘッダを include しておく)#define
されている REP macro などについて:-「macro には
MACRO_CASE
を使う」という通常の作法と「できるだけ混乱のなさそうな名前を使う」を満たしてはいるはずrep
とREP
が両方 define されている」「FOR
とREP
が両方 define されている」などのとき、たいていどちらかは#define X(i, n) for (int i = 0; i < n; ++ i)
でもう一方は#define Y(i, m, n) for (int i = m; i < n; ++ i)
だと思うが、初見で自信を持って見分けられるものであってほしいusing namespace std;
について:left
とかy0
みたいな名前のグローバル変数を定義できなかったりすると思うけど、そもそもグローバル変数は使うべきでない。不適切なことをすると不適切な結果になるのは当然であり、これは気にしなくてよいその他について:
typedef long long ll;
template <class T, class U> using P = pair<T, U>;
The text was updated successfully, but these errors were encountered: