标题:请教 关于动态链接库的问题
只看楼主
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
得分:0 
程序代码:
   BOOL ShowWindow(int nCmdShow) const
    {
        return ::ShowWindow(m_hwnd, nCmdShow);
    }

    BOOL UpdateWindow(void) const
    {
        return ::UpdateWindow(m_hwnd);
    }

::ShowWindow(m_hwnd, nCmdShow);
是调用SDK库的ShowWindow, 如果是 ::怎么解?有没有扩展的写法?

梅尚程荀
马谭杨奚







                                                       
2012-05-19 13:07
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
得分:0 
回复 40楼 有容就大
不能说希望C++怎么样怎么样。。。
任何语言都不是完美的,或多或少都会有这样那样的不如意的地方。
C++里面没C#中的Delegate,Interface,属性机制,带范围的枚举,没有反射机制。。。。,
C#调用平台API invoke不是安全和方便的,没有C++中的可以独立的函数定义,全是类。
你怎么选择?Java和C#都可以做方便的做web程序,C++并不方便,你怎么选择?

研究方向这个多:手机嵌入式方向,数据库方向,WEB程序方向,游戏程序方向,程序架构方向,代码测试师方向。。。。
你得找出一个自己感兴趣的方向。。。贪多是没有结果的,你没有这么多的精力,也没有这么多的时间。

我们都在路上。。。。。
2012-05-19 13:21
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
得分:0 
回复 41楼 有容就大
这种写法只能在MS平台上,所以并不是一种完美的机制,在MinGW上编译通不过的。
所以成员函数的定义并不能象MFC或是这段程序这样定义成员函数,以求得和Win32 API具有同等函数意义写法。

我们都在路上。。。。。
2012-05-19 13:24
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
得分:0 
另外程序风格,你也需要选择,是选这种MS 匈牙利命名方式还是选下划线分割式的,如偶的某些示例代码do_copy这种。
得定下来,这个是个人选择问题,偶不能用(匈牙利命名是脑残式的命名方式)来左右你的选择,一但选择,就在程序中始终如一的执行。

我们都在路上。。。。。
2012-05-19 13:28
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
得分:0 
回复 44楼 hellovfp
匈牙利命名是脑残式的命名方式

这该怎么讲?

梅尚程荀
马谭杨奚







                                                       
2012-05-19 13:47
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
得分:0 
回复 45楼 有容就大
这个是别人说的,反正你随便打开一个用MFC写成的,或者就是我们平常用Win32写的那些程序,密密麻麻的代码,看着都不爽。
分个单词都还要大小写在脑海里过一遍。反正偶也是这么觉得的,没有linux,Unix中普遍使用的下划线分隔方式看着爽。
但有人习惯这种写法,并且觉得很好,没有任何问题。。。所以各人选择不同。这些都不能左右你自己的选择,这个得你自己问自己。

我们都在路上。。。。。
2012-05-19 13:55
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
头文件的本质是什么、重载函数到底是什么意思,都没搞清楚,就去碰这个项目。

授人以渔,不授人以鱼。
2012-05-19 21:12
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
得分:0 
回复 47楼 TonyDeng
书浏览过了 不过看完就感觉没有实实在在的体会 所以到处去找代码看 看他们是如何组织书上的东西的。
老大 头文件 我还是用过一些 不过要我说出他的本质 我现在还归纳不下来 大致的应该是做为一个与其他 模块的接口吧
.h里声明函数和变量 在.cpp里实现后 就完成了一个模块的创建 当另外一个模块需要调用这个模块里的函数功能就只要包含他的头文件即可 当然前提是这两个模块应该在一个工程里 如果像#include <stdio.h>就牵扯到库 现在就是想弄明白下库 和动态 静态 库的一些东西 。

不知我上面说的对不对 ?

梅尚程荀
马谭杨奚







                                                       
2012-05-20 10:39
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
得分:0 
光浏览完书是没用的,偶敢打赌关上书,你连一个最基本的string类都写不出来。
C++的东西不练是没用的。你真以为MFC就象你看到的那样,一个类继承另一个类就完了?
等你了解了一什么是设计模式,再回头看你今天的理解吧。

感兴趣的话,这里有个偶以前做的一个PSD,你可以打开看看里面是如何管理层的。
送你一个PS小技巧,存盘的时候,把图层的最左边那个眼睛关了,得到的PSD文件会比全打开要小得多。

封面.part1.rar (3 MB)

封面.part2.rar (2.83 MB)

我们都在路上。。。。。
2012-05-20 10:51
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
得分:0 
论坛帖子里不能上传单个上5MB的文件。。测试了一下,呵呵。

我们都在路上。。。。。
2012-05-20 10:54



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-367685-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.196384 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved