Labview:投射到更具体的对象时出现错误 1057
Labview: error 1057 when casting to more specific object
我在 C# 中有两个 classes 编译成一个库以导入到 LabView 项目中。
public class 上
{
public sbyte Signed8 { 得到;放; }
public char Unicode16 { 得到;放; }
public short Signed16 { 得到;放; }
public int Signed32 { 得到;放; }
public long Signed64 { 得到;放; }
public int UpperDoSomething() { return Signed32; }
}
</p>
<p>和</p>
<p>
public class 下 : 上
{
public byte Unsigned8 { get;放; }
public ushort Unsigned16 { get;放; }
public uint Unsigned32 { 得到;放; }
public ulong Unsigned64 { 得到;放; }</p>
public uint LowerDoSomething() { return Unsigned32; }
}
我不断收到错误 1057:
"Type mismatch: Object cannot be cast to the specific type"
为了避免任何人下载文件,分析组件"to more specific class":
上层连接参考class
一个单元化的 Lower class 连接到目标 class
一个 属性 节点连接到特定的 class 引用
(旁注)对于任何下载 vi 的人来说,有一个 属性 连接到一个指示器,没有任何松动的电线
您正在调用 Upper 的构造函数,然后尝试将其转换为 Lower,但它不是其实例。
当您通过代码将子class实例作为父实例class传递给子class实例时,tsc块(通常在OOP中转换为后代)很有用,但随后有一个操作这需要 subclass 类型。不过,它必须是作为 subclass 的实例创建的。
我在 C# 中有两个 classes 编译成一个库以导入到 LabView 项目中。
public class 上 { public sbyte Signed8 { 得到;放; }
public char Unicode16 { 得到;放; } public short Signed16 { 得到;放; } public int Signed32 { 得到;放; } public long Signed64 { 得到;放; }public int UpperDoSomething() { return Signed32; } }
</p> <p>和</p> <p> public class 下 : 上 { public byte Unsigned8 { get;放; } public ushort Unsigned16 { get;放; } public uint Unsigned32 { 得到;放; } public ulong Unsigned64 { 得到;放; }</p> public uint LowerDoSomething() { return Unsigned32; } }
我不断收到错误 1057: "Type mismatch: Object cannot be cast to the specific type"
为了避免任何人下载文件,分析组件"to more specific class":
上层连接参考class
一个单元化的 Lower class 连接到目标 class
一个 属性 节点连接到特定的 class 引用
(旁注)对于任何下载 vi 的人来说,有一个 属性 连接到一个指示器,没有任何松动的电线
您正在调用 Upper 的构造函数,然后尝试将其转换为 Lower,但它不是其实例。
当您通过代码将子class实例作为父实例class传递给子class实例时,tsc块(通常在OOP中转换为后代)很有用,但随后有一个操作这需要 subclass 类型。不过,它必须是作为 subclass 的实例创建的。