1343313.jpg

amatsutsumi

近期学习C++的成果

上个帖子后老哥们给了很多建议,自己又继续啃了几本书,想写点什么试试自己的C++水平,就写了个极其简单的Win32图形应用框架练练手。

工程见附件,需要最新版VS 2022生成。

(我只是个菜鸟,大佬请轻喷)

顺便再吐槽下,MSVC的bug实在是太TM多了!!!!!!比如这个,还有这个,每次更新修了旧bug又会有新bug冒出来,艹!!!!!!
附件: TestWindowsProject.zip (27 K) 下载次数:33

7.gif

AveMujica

是大佬,666

none.gif

Agatha Baker

用户被禁言,该主题自动屏蔽!

none.gif

11ff9683

妈呀。。别让我看黄色论坛的时候也想起这些啊。。

none.gif

11a75470

那个stdext和win32callbackwhunk是自己写的吗?里面东西好多啊。。
Win32Exception copt都写了move不顺便写了吗

879105.jpg

1896ba4d

大佬牛逼

none.gif

11a75470

这个throw_if_equal_to_xx 感觉没必要,在throw_if_equal_to里用if consexpr把不要的类型可以处理,其他的就直接丢I,或者想要编译期的check用sfinae处理一下这些type应该也行?

none.gif

6df5a51f

建议离开C++的苦海,拥抱C#的快乐

1544698.jpg

遠坂凛

B8F  2022-08-12 23:17
(南+脚本 https://www.south-plus.net/read.php?tid-2086932.html)
int c = -1;
c++;
我的水平还是0

none.gif

11a75470

不对啊,你都开到20了,怎么还搁这sfinae,怎么不用concept

1343313.jpg

amatsutsumi

回 9楼(11a75470) 的帖子

1. 全是自己写的。Win32CallbackThunk.hpp的主要目的是向回调函数中插入this指针,而stdext.hpp则是为了在编译期分析函数的类型辅助Thunk实现。
2. 你没理解这个函数的作用。许多Win32 API会返回一个特定的值(如NULL, FALSE)表示失败,而Win32API这个类的作用就是在函数失败时抛异常,throw_if_equal_to则是为了简化“检测返回值-抛异常”这个过程。
3. 之前看书时学的是SFINAE写习惯了

none.gif

vbf时代

建议拥抱JAVA

1355725.jpg

撸树

B12F  2022-08-13 00:16
(其实这话我本没说过,只是说是我说的人多了,也就变成了我说的)
来学 C++/CLI 吧

none.gif

11a75470

我知道是为了简化,只是觉得没必要加那些特化,一个函数就可以解决了(

none.gif

Mig1.44

楼主,你是怎么发附件的啊?

none.gif

香农定理


none.gif

aswk2077

也可以先看看明解C++

1343313.jpg

amatsutsumi

回 14楼(Mig1.44) 的帖子

升到Lv.1就能发附件了