MSDN有关于[ComVisible]属性的这篇文章.我不太清楚当一个人设置时会发生什么[ComVisible(true)].
MSDN说
该默认值为true,这表明托管类型是COM可见.不需要此属性来使公共托管程序集和类型可见 ; 它们在默认情况下对COM可见.只有公共类型才能显示.
所以他们说公共类型默认是COM可见的.但他们也说只有通过设置才能看到公共类型[ComVisible(true)].它没有意义:如果默认情况下公共类型是可见的,那么设置如何[ComVisible(true)]使公共类型可见?如果它们已经可见,它们将如何变得更加醒目?
也许我的理解不正确.如果有人能对上述陈述有所了解,我将不胜感激.
我的机器上有 Win7 64 位操作系统。我正在 eclipse 中创建一个 64 位插件。我试图为 osgi.os 属性设置值。我提到了这个链接。
链接提到
Property Meaning Possible values
osgi.os operating system win32, win32, linux, macosx, aix, solaris, hpux, qnx
osgi.ws windowing system win32, motif, gtk, photon, carbon
osgi.arch processor architecture x86, x86_64, ia64, ia64_32, ppc, PA_RISC, sparc
Run Code Online (Sandbox Code Playgroud)
我想知道 osgi.os 选项没有提到 win64 作为可能的值。如果我的机器中有 win64 操作系统,我应该为属性 osgi.os 分配什么值,因为它只显示 win32 作为 osgi.os 属性的可能值?
对于 osgi.os 属性,为什么它重复 win32 两次可能的值?对于 osgi.os 属性,是否有任何理由提及win32, win32两次而不是只提及win32一次?
我阅读了此文档页面,了解如何从子类调用超类构造函数.他们提到的语法是这样的:
obj = obj@MySuperClass(SuperClassArguments);
Run Code Online (Sandbox Code Playgroud)
我想知道@上面语法中符号的用途是什么.是@符号只是一个毫无意义的地方占用人在语法或没有的@符号代表的功能手柄符号在MATLAB?
如果我使用:
obj = MySuperClass(SuperClassArguments);
Run Code Online (Sandbox Code Playgroud)
代替
obj = obj@MySuperClass(SuperClassArguments);
Run Code Online (Sandbox Code Playgroud)
它仍然可以正常工作.那么使用@符号的目的是什么?
c# ×1
com ×1
comvisible ×1
constructor ×1
eclipse ×1
matlab ×1
matlab-class ×1
maven ×1
oop ×1
osgi ×1
superclass ×1
tycho ×1
winapi ×1