问题标签 [linkage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
10012 浏览

wpf - 依赖属性依赖于另一个

如何注册一个依赖属性,其值是使用另一个依赖属性的值计算的?

因为 .NET 属性包装器在运行时被 WPF 绕过,所以不应在 getter 和 setter 中包含逻辑。解决方案通常是使用PropertyChangedCallbacks. 但是那些被声明为静态的。

例如,完成这个人为任务的正确方法是什么:

只要依赖不是循环的,是否有适当的方法来实现这一点?

0 投票
1 回答
199 浏览

c++ - C++ - 在 Windows 上导入显式专用模板

我在使用 VC2008 SP1 在 Windows 上链接程序时遇到了一些麻烦。我在 DLL 中明确专门化了一个模板成员函数,它正确地显示为依赖 walker 中的导出符号,具有正确的类型和正确的参数。

当我尝试从 .exe 调用符号时,链接器抱怨它无法解析符号(尽管它可以编译对象),但是它说它无法解析的符号的修饰名称完全匹配我的 DLL 中导出符号的修饰名称(如使用依赖项walker 所见) 该问题仅发生在显式专门导出的模板成员函数中。如果我评论对这些的调用,所有其他导出的函数类都将链接正常,因此 .lib 看起来生成正常。

我已尝试更改标题中模板函数的声明以包含“extern”指令,并且它正确指定了惯用的 __declspec(dllimport) ,但这没有区别。

任何想法表示赞赏。谢谢。

0 投票
2 回答
548 浏览

c - C 中的链接:GCC 是否遵循 C99 规范,还是我不理解规范?

我试图了解 C99 中存储类说明符的确切行为,并且某些 GCC 行为似乎不遵循规范,除非我误解了规范。从 6.2.2 (2) 开始:

在一个翻译单元中,具有内部链接的标识符的每个声明都表示相同的对象或函数。

但是,我使用以下程序测试了 GCC (powerpc-apple-darwin9-gcc-4.2.1):

编译-std=c99,它打印以下内容:

如果我正确理解规范,它应该打印:

我理解为什么 GCC 会偏离这里的规范,我只是想知道这种行为是否有更深层次的解释。

0 投票
1 回答
676 浏览

actionscript-3 - ReferenceError:错误 #1008 类不明确

我有一个 As3 文件,但出现运行时错误:

ReferenceError: **Error #1008**: Tooltip is ambiguous; Found more than one matching binding.

我有一个名为的类Tooltip,还有一个带有链接类的库中的符号:Tooltip 和 Base Class fvg.Tooltip(fvg 是包的名称)。为什么我会遇到这种冲突?

0 投票
3 回答
2792 浏览

gcc - Makefile自动链接依赖?

让程序在编译时找出依赖关系很容易(使用 gcc -MM)。然而,链接依赖性(决定应该链接到哪些库)似乎很难弄清楚。当需要具有要链接到的各个库的多个目标时,此问题就会出现。

例如,需要构建三个动态库目标 t1.so、t2.so 和 t3.so。t1.so 需要数学库 (-lm),而 t2 和 t3 不需要。编写单独的规则会很乏味。需要与数学库链接的三个目标的单个规则可以省去麻烦。但是,它会导致目标大小膨胀,因为数学库未用于 t2.so 和 t3.so。

有任何想法吗?

0 投票
7 回答
108424 浏览

c++ - 关于不一致的dll链接

如何删除此链接警告?您可以看到导致此警告的代码段。

警告 C4273:“InitGuiCtrlsDLL”:不一致的 dll 链接

我也有导出和导入定义,例如:

0 投票
1 回答
219 浏览

c++ - STL 静态常量成员定义

以下如何工作?

我的印象是,为了获取static const-ant 成员的地址,我们必须在某个翻译单元中物理定义它,以便让链接器满意。也就是说,在查看了此 TU 的预处理代码后,我找不到该digits成员(或任何其他相关成员)的外部定义。

我在两个编译器(VC++ 10 和 g++ 4.2.4)上对此进行了测试,并从两者中得到了相同的结果(即,它有效)。链接器是否会自动链接到定义了这些东西的目标文件,还是我在这里遗漏了一些明显的东西?

0 投票
3 回答
253 浏览

grails - Grails XOM 链接错误 - SAXParserException

可能相关: Grails - 试图包含 HTPPBuilder - 链接错误

我正在尝试将 XOM 包含在我的 grails 项目中。我怎么知道我需要排除哪个依赖库?我在这里迷路了。

错误:

0 投票
4 回答
464 浏览

c++ - 在 C 和 C++ 中,“静态”表示没有外部链接的函数/变量是如何发生的?

在 Cstatic中可以表示局部变量或没有外部链接的全局函数/变量。在 C++ 中,它也可以表示每个类的成员变量或成员函数。

有没有提到static似乎与缺乏外部链接完全无关的关键字被用来表示缺乏外部链接是如何发生的?

0 投票
1 回答
1387 浏览

c++ - 在未命名的命名空间中定义的 C 回调函数?

我有一个使用 C 野牛解析器的 C++ 项目。C 解析器使用函数指针结构来调用函数,这些函数在产生式被野牛减少时创建适当的 AST 节点:

现在,在项目的 C++ 部分,我填写了这些指针

现在我将它们放入其中的唯一原因extern "C"是因为我希望它们具有 C 调用约定。但最理想的是,我希望他们的名字仍然被破坏。它们永远不会从 C 代码中按名称调用,因此名称修改不是问题。将它们弄乱可以避免名称冲突,因为某些操作被称为error,并且 C++ 回调函数具有如下丑陋的名称,以避免与其他模块发生名称冲突。

我想知道是否可以仅通过提供函数类型 C 链接来实现

有任何想法吗?我正在寻找标准 C++ 解决方案。