SORU
19 HAZİRAN 2014, PERŞEMBE


Ne kadar Hızlı bu çok satırlı dize makro uygulayabilirsin?

GPUİmage benim çerçeve için Objective-C kodu, aşağıdaki makro var:

#define STRINGIZE(x) #x
#define STRINGIZE2(x) STRINGIZE(x)
#define SHADER_STRING(text) @ STRINGIZE2(text)

bana özel filtre benim alt sınıflar, bu gibi içinde hazır NSString olarak çok satırlı köşe ve parça içi gölgeleme sağlar

NSString *const kGPUImagePassthroughFragmentShaderString = SHADER_STRING
(
 varying highp vec2 textureCoordinate;

 uniform sampler2D inputImageTexture;

 void main()
 {
     gl_FragColor = texture2D(inputImageTexture, textureCoordinate);
 }
);

GPUİmage filtre alt gövde metni dahil biçimli köşe ve parça gölgeleme sağlamak için buna ihtiyacı var. Onları ayrı dosyalar olarak nakliye çerçevesinde statik bir kütüphane derlenmiş olması mümkün olur. Yukarıdaki makro kullanarak, bu gölgeleme ve çerçeve kod ve dış shader dosyaları arasında kopyalanan yapıştırılan mümkün yeniden biçimlendirmeye çalışması saçma bir miktar olmadan yapabilirim.

Hızlı yürüme derleyici makrolar ve 6 ** belgeleri, ile

Karmaşık makrolar C ve Objective-C kullanılıyor ama hiçbir karşılığı yok Swift. Karmaşık makrolar tanımlamak sabitler,makrolar programlama dilinde * sembolü de dahil olmak üzere, işlev benzeri makrolar. Karmaşık makroları kullanın C ve-C Objektif tipi-kontrol kısıtlamaları veya önlemek için demirbaş kodu büyük miktarda yeniden yazmak. Ancak, makroları yapabilirsiniz ve zor hata ayıklama yeniden düzenleme. Swift, işlevlerini kullanabilirsiniz ve taviz vermeden aynı sonuçları elde etmek için jenerik. Bu nedenle, C ve Objective-C karmaşık makroları kaynak dosyaları Swift kodu için kullanılabilir yapılır.

Başına hattı "Hızlı kullanabilirsiniz fonksiyonları ve jenerik elde etmek için aynı sonuçları olmadan taviz", bir şekilde Swift sağlamak çok satırlı dize hazır olmadan taraftan bir dize birleştirme işlemleri?

CEVAP
6 Kasım 2014, PERŞEMBE


Daha bir inanıyorum .Web Tarayıcı denetimi yerine Net Çerçeve sorunu. Tarayıcı atın ve gittikten sonra bir işleyici:boş tarayıcı navigasyon olayına takma iyi bir çözüm olacaktır. Örneğin:

private void RemoveButton_Click(object sender, RoutedEventArgs e)
{
  var browser = (WebBrowser) _stackPanel.Children[_stackPanel.Children.Count - 1];
  _stackPanel.Children.RemoveAt(_stackPanel.Children.Count-1);

  NavigatedEventHandler dispose = null;
  dispose = (o, args) =>
  {
    browser.Navigated -= dispose;
    browser.Dispose();
  };
  browser.Navigated  = dispose;
  browser.Navigate(new Uri("about:blank"));
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Elly Awesome

    Elly Awesome

    15 ŞUBAT 2010
  • jbignacio

    jbignacio

    13 Mart 2006
  • LiveForGodsKingdom

    LiveForGodsK

    6 NİSAN 2008