发癫(2024.10.14-2024.10.18)
虽然已临近CSP复赛,但我还在不务正业
更改缺省源
最近几天莫名其妙的的想改一下我的缺省源。
之前和现在的缺省源比较:
之前:
#include<stdio.h> #include<string.h> //#include<bits/stdc++.h> //#include<iostream> //using namespace std; //using std::cin; #define itn int #define ll long long //#define int ll int max(int x,int y){return x>y?x:y;} int min(int x,int y){return x<y?x:y;} const int MAX_add=10; const int MAX_N=1000; const int MAX_M=1000; const int N=MAX_N+MAX_add; const int M=MAX_M+MAX_add;
现在... :
#include<stdio.h> #include<ctype.h> //#include<bits/stdc++.h>//不耐烦了 //#include<iostream> //using namespace std; #ifdef _GLIBCXX_IOSTREAM #define endl '\n' using std::cin; using std::cout; #define Fast_IO ios::sync_with_stdio(0),cin.tie(0) #endif namespace OI{//好长的缺省源 #define ct const #define ctr constexpr #define itn int //防手残 #define un unsigned typedef long long ll; typedef unsigned long long ull; typedef const int CI; #define rt register #define _rep(i,st,n) for(rt int i=(st);i<(n);++i) #define rep(i,st,n) for(rt int i=(st);i<=(n);++i) #define _dwh(i,st,n) for(rt int i=(st);i>(n);--i) #define dwh(i,st,n) for(rt int i=(st);i>=(n);--i) #define dw(n) while(n--) const int L=1<<15; char buf[L],*p1,*p2; int my_getchar(){return (p1==p2?(p2=buf+fread(p1=buf,1,L,stdin),p1==p2?EOF:*p1++):*p1++);} #define getchar my_getchar int read() { int x=0; bool f=0; char ch=getchar(); while(!isdigit(ch)){if(ch=='-') f=!f;ch=getchar();} while(isdigit(ch)) x=x*10+(ch&15),ch=getchar(); if(f) return -x; return x; } //#define int ll int max(int x,int y){return x>y?x:y;} int min(int x,int y){return x<y?x:y;} int bmax(int &x,int y){return x=max(x,y);} int bmin(int &x,int y){return x=min(x,y);} template<class T,class U> struct __is_same{static const int value=false;}; template<class T> struct __is_same<T,T>{static const int value=true;}; #define is_same(T,U) (OI::__is_same<T,U>::value) // C++ 11 template<class T> T go_sum(T x){return x;} template<class T,class ...Args> T go_sum(T x,Args... args){return x+go_sum(args...);} CI \ MAX_add=10, MAX_N=1e7, MAX_M=2e5, N=MAX_N+MAX_add, M=MAX_M+MAX_add; };
注:此次发癫2024.10.14左右至2024.10.16
《存储变量类型的类》
rt,又是一次莫名其妙,想造的
然后,不出意外的,出了意外。
附最后的代码:
//已省略缺省源 template<class T=int> struct VAR{ int use; VAR(){use=0;} template<class U> bool operator ==(VAR<U> y){return is_same(T,U);} template<class U> bool operator !=(VAR<U> y){return!is_same(T,U);} }; const VAR<int> _INT; const VAR<long> _LONG; const VAR<short> _SHORT; const VAR<double> _DOUBLE; template<class T=int/*,class U=int*/> struct _VAR{ void *p; _VAR(){p=new VAR<T>;((VAR<T>*)p)->use=1;} template <class _T> _VAR operator =(_VAR<_T> a){ p=a.p; ((VAR<_T>*)p)->use++; return *this; } template <class _T> bool operator ==(_VAR<_T> a){ return (*(VAR<>*)a.p)==(*(VAR<>*)p); } ~_VAR() { ((VAR<>*)p)->use--; if(((VAR<>*)p)->use==0) delete (VAR<>*)p; } }; //#define _VAR<int> a,c; _VAR<double> b; int main() { a=b; if(a==c) printf("TRUE"); else printf("FALSE"); return 0; }
这个东东给我到此为止!!!
当然你有改进建议的话,就更好了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步