菜鸟教程小白 发表于 2022-12-13 08:46:12

ios - 为什么只有当我的 iPhone 未连接到我的 Mac 时才会出现警告?


                                            <p><p>不是重复的,但警告信息是相同的。我读了这篇文章,但没有帮助。</p>

<p> <a href="https://stackoverflow.com/questions/7017281/performselector-may-cause-a-leak-because-its-selector-is-unknown" rel="noreferrer noopener nofollow">performSelector may cause a leak because its selector is unknown</a> </p>

<p>我没有使用 <strong>performSelector</strong>,但我收到的警告与使用时相同。</p>

<p>Xcode 6.3 中的警告信息是 </p>

<pre><code> PerformSelector may cause a leak because its selector is unknown
</code></pre>

<p>代码是</p>

<pre><code>NSString *string=;
NSLog(@&#34; Expected :%lli&#34;,);
</code></pre>

<p>data.length 应该返回一个 NSUInteger</p>

<p>expectedContentLength 是 <strong>long long</strong></p>

<p>当我将 %tu 更改为 %zu 时,我收到一条新的警告消息</p>

<pre><code> Values of type &#39;NSUInteger&#39; should not be used as format arguments; add an explicit cast to &#39;unsigned long&#39; instead
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>警告是关于 <code>NSUInteger</code> 大小的变化取决于 CPU 架构,并且可能仅在发布版本期间发生(我理解为“未连接到 Mac”),因为发布版本包含所有有效的 CPU 架构(32 位和 64 位),而调试版本仅包含用于调试的设备的架构。 (如果您没有更改默认设置的<em>build设置</em>,这是正确的)。</p>

<p>当 <code>NSUInteger</code> 改变大小时,假设它是 <code>unsigned long</code> 并使用强制转换:</p>

<pre><code>NSString *string=;
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 为什么只有当我的 iPhone 未连接到我的 Mac 时才会出现警告?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/31138931/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/31138931/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 为什么只有当我的 iPhone 未连接到我的 Mac 时才会出现警告?