递归火山软件开发平台

标题: 有个疑问,写的子程序如果没有被引用调用会编译进去吗 [打印本页]

作者: 朕的    时间: 2021-5-26 18:52
标题: 有个疑问,写的子程序如果没有被引用调用会编译进去吗
有个疑问,写的子程序如果没有被引用调用会编译进去吗?

比如,一个程序里面,写了一些类、方法,或者易语言的子程序,如果这些子程序都没有被使用的话,会被编译进去吗?会不会增加程序的体积?

作者: 呵呵仙8    时间: 2021-5-26 19:15
应该会把整个页面的内容写进去!不然,一个空窗口那里来4点几m体积
作者: 李先森    时间: 2021-5-26 19:16
火山是按需编译,凡是执行中没有被调用,就不会编译程序中
作者: 朕的    时间: 2021-5-26 19:16
呵呵仙8 发表于 2021-5-26 19:15
应该会把整个页面的内容写进去!不然,一个空窗口那里来4点几m体积

那个4MB是 MFC界面库的原因,只要用了这个库就会多出来几MB。
作者: 火绒    时间: 2021-5-26 19:16
呵呵仙8 发表于 2021-5-26 19:15
应该会把整个页面的内容写进去!不然,一个空窗口那里来4点几m体积

误人子弟
作者: 李先森    时间: 2021-5-26 19:19
呵呵仙8 发表于 2021-5-26 19:15
应该会把整个页面的内容写进去!不然,一个空窗口那里来4点几m体积

窗口组件不一样,因为窗口组件默认属性及关联代码,即便你不用系统也会调用
作者: 呵呵仙8    时间: 2021-5-26 19:36
大家一至通过!证明是不会的!放心加载任何模块即可!^O^
作者: 朕的    时间: 2021-5-26 19:42
呵呵仙8 发表于 2021-5-26 19:36
大家一至通过!证明是不会的!放心加载任何模块即可!^O^

引用的模块没用到的子程序,肯定是不会写入进程序的。不知道自己写的程序里面,一些没使用的会不会写进去
作者: 呵呵仙8    时间: 2021-5-26 20:07
你复制某些模块的代码到你的工作区下再编译,看下体积大了多少字节不就知有没有多余代码编译了?!
作者: wrx198728    时间: 2021-5-26 20:42
调用了某库 会把这个库函数所在的相关所有文件全部打包
作者: 67564226    时间: 2021-5-26 22:02
目前是,只要调用某个支持中一个函数,  编译的时候,就把该支持库生成一个DLL到你的主程序下。

这就相当于,把该支持库全部打包了。 创世说有静态什么的不会生成DLL 但我在测试的时候发现,还是会生成一大堆的DLL  让你着着眼晕。
作者: 创世魂    时间: 2021-5-26 22:24
火山是按需编译,如果你定义了一个方法,这个方法没有被调用,并且也没有使用强制输出属性,是不会被编译的。哪怕你定义一个变量没有调用,也是不会编译的。
作者: 朕的    时间: 2021-5-27 05:00
创世魂 发表于 2021-5-26 22:24
火山是按需编译,如果你定义了一个方法,这个方法没有被调用,并且也没有使用强制输出属性,是不会被编译的 ...

这就很好,不怕代码冗余了,感谢解答
作者: 飞扬工作室    时间: 2021-5-29 00:03
不会的,尽管放心吧.




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4