C++牛逼!
最编程
2024-05-01 18:38:47
...
我们都知道,C++是一门难学易用的语言。
难学在于就连他的创始人 Bjarne Stroustrup 都说自己有时候看不懂这门语言了。
长期玩 C++ 都有一种感觉,那就是总觉得这门语言学不完,不管你的水平多高,一定会有你不知道的黑魔法,关键在于你不知道自己不知道。
C++ 是一门支持多范式编程的语言,提供了四种相辅相成的编程思维模式:
object-based:基于对象
object-oriented: 面向对象
procedural-based: 面向过程
generic paradigm: 泛型编程
你可以用C++ 写出 C 风格的代码,也能写出 Java 似的面向对象代码,更能写出天书版的模板元编程。
每一种范式我认为都是正交的,你可以只掌握 C with class,丝毫不会影响你用 C++
写出优秀的软件。
很多时候看知乎这种论坛上的大佬谈论 C++ 容易被整自闭,他们喜欢用模板元来炫技,很多新手看起来就会比天书。
比如如何快速判断一个元素是否在一个集合中?
这是我在内网看其它大佬给出的解法,使用了C++ 11 可变参数模板和折叠表达式:
template <typename T>
is(const T& target) {
return false;
}
template <typename T, typename... Args>
inline bool IsContains(const T& target, const Args&... args) {
return ((target == ar
上一篇: vue3 初次体验和提示