繁体   English   中英

为什么Debug.Writeline会在我的文本左侧输出一些变量?

[英]Why does Debug.Writeline output some variables to the left of my text?

我有以下代码,我想知道为什么“资产名称”行的输出将变量粘贴到我的文本的左边而不是右边? 有人可以帮忙吗?

这个:

System.Diagnostics.Debug.WriteLine(" ------------ LoadContent ------------");
System.Diagnostics.Debug.WriteLine("LoadContent: Asset Name : {0}", theAsset);
System.Diagnostics.Debug.WriteLine("LoadContent: Sprite X Offset : {0}", thisSpriteXCentreOffset);
System.Diagnostics.Debug.WriteLine("LoadContent: Sprite Y Offset : {0}", thisSpriteYCentreOffset);

输出(粗线是意外的):

------------ LoadContent ------------

SpaceShip:LoadContent:资产名称:{0}

LoadContent:Sprite X Offset:64

LoadContent:Sprite Y Offset:32

我的猜测是, theAsset是一个string ,因此你调用Debug.WriteLine(string, string)而不是Debug.WriteLine(string, object[]) 在这种情况下,第二个参数被解释为“类别”并且前置于输出。

您可以尝试将其强制转换为object以调用正确的重载:

Debug.WriteLine("LoadContent: Asset Name : {0}", (object)theAsset);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM