GVKun编程网logo

如何将此函数从样式化组件包转换为常规 jsx

3

在本文中,我们将带你了解如何将此函数从样式化组件包转换为常规jsx在这篇文章中,同时我们还将给您一些技巧,以帮助您实现更有效的.net–将PCL转换为常规类库、c–将shared_ptr转换为常规指针

在本文中,我们将带你了解如何将此函数从样式化组件包转换为常规 jsx在这篇文章中,同时我们还将给您一些技巧,以帮助您实现更有效的.net – 将PCL转换为常规类库、c – 将shared_ptr转换为常规指针、c# – 如何将此行转换为vb.net、javascript – 如何将匿名函数转换为常规函数?

本文目录一览:

如何将此函数从样式化组件包转换为常规 jsx

如何将此函数从样式化组件包转换为常规 jsx

您可以简单地将 ImgSrc 编写为一个组件,该组件返回具有指定属性的 div,例如

const ImgSrc = props => (
  <div styles={{
            opacity: props.opacity,filter: props.filter
   }} />
)

.net – 将PCL转换为常规类库

.net – 将PCL转换为常规类库

我目前有一个便携式类库,其代码完全与常规类库完全兼容,无需任何修改。

我想知道是否有现有的软件自动进行转换;我看了Visual Studio工具,但找不到任何合适的。在写我自己之前,我只是想确定!

差异将在.proj文件中。

自己尝试过,你将不得不做以下所有的事情:

>删除< TargetFrameworkProfile>元件
>删除< ProjectTypeGuids>元件
>更改你在#2(下面)你在#1中显示的地方

正规班图书馆

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

便携式类库

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />

c – 将shared_ptr转换为常规指针

c – 将shared_ptr转换为常规指针

我们有一个函数,它返回一个新的已分配对象作为输出参数(引用指针).

MyFunc(MyObject*& obj)
{
    obj = new MyObject();
}

这样称为:

Object* obj;
MyFunc(obj);

在内部,该函数执行了相当多的操作,并使用shared_ptr进行内存管理.完成后,我们想要返回的对象由shared_ptr引用.我正在努力如何将我们的新分配对象作为常规指针返回.

我们希望继续在内部使用shared_ptr来降低风险,但是返回一个shared_ptr似乎没有意义,因为调用者对返回的值拥有完全的所有权(被调用的函数或对象不再需要或保持对返回数据)我们希望它们具有灵活性.

有没有人有任何建议允许我们在内部使用shared_ptr但有一个常规指针接口?谢谢

解决方法

如果由于某种原因你不能/不想使用std :: unique_ptr或std :: auto_ptr(例如,如果你因为某些原因需要在创建过程中在内部拥有多个所有者,或者你的底层方法需要传递std :: shared_ptr),您仍然可以使用自定义删除器使其与std :: shared_ptr一起使用,如下所述: https://stackoverflow.com/a/5995770/1274747

原则上,在返回之前完成后,将切换器切换为不实际删除实例(使删除器为“null”),然后通过shared_ptr get()返回.即使在所有shared_ptr对象被销毁之后,内存也不会被删除(因为删除的删除器将跳过删除).

评论中还有一个链接不太明显,这可能是您感兴趣的:
http://paste.ubuntu.com/23866812/
(不确定,如果在没有所有情况下交换机的共享所有权的情况下它真的可行,则需要测试)

编辑

正如预期的那样,使用来自pastebin的链接简单的可拆卸删除器需要小心,因为删除器实际上被复制以存储在std :: shared_ptr中.

但你仍然可以通过使用std :: ref使其工作:

MyFunc(MyObject*& obj)
{
    disarmableDelete<MyObject> deleter;
    std::shared_ptr<MyObject> ptr(new MyObject(),std::ref(deleter));
    // do what is necessary to setup the object - protected by deleter
    // ...
    // disarm before return
    deleter._armed = false;
    obj = ptr.get();
    // deleter disarmed - object not freed
}

而且为了完整性(并避免潜在的未来破坏链接),这里是从http://paste.ubuntu.com/23866812/开始实施的disarmableDelete.

template <typename T,typename Deleter = typename std::default_delete<T> >                                                                                                                              
    struct disarmableDelete : private Deleter {                                                                                                                                                         
        void operator()(T* ptr) { if(_armed) Deleter::operator()(ptr); }                                                                                                                                
        bool _armed = true;                                                                                                                                                                             
    };

c# – 如何将此行转换为vb.net

c# – 如何将此行转换为vb.net

来自asp.net MVC的免费晚餐书

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(int id,FormCollection formValues) {
    Dinner dinner = dinnerRepository.GetDinner(id);
    UpdateModel(dinner);
    dinnerRepository.Save();
    return RedirectToAction("Details",new { id = dinner.DinnerID });
}

如何将此行转换为vb.net?

return RedirectToAction("Details",new { id = dinner.DinnerID });

更多新的{id = dinner.DinnerID}部分

谢谢

解决方法

试试这个

Return RedirectToAction("Details",New With { .id = dinner.DinnerID})

在VB中,匿名类型声明语法以及普通对象初始化器需要“.”.所有属性名称的前缀.这与其他VB功能(如With上下文)一致.

javascript – 如何将匿名函数转换为常规函数?

javascript – 如何将匿名函数转换为常规函数?

总共JS noob在这里.我有以下行来实现jQuery Slider:

<script type="text/javascript">
    $(document).ready(function () {
        $("#wheelLeft").slider({ 
                 orientation: 'vertical', value: 37, 
                 min: -100, max: 100, 
                 slide: function (event, ui) { $("#lblInfo").text("left"); } });
    });
</script>

基本上在幻灯片事件中,#lllInfo将其文本设置为左侧.这很好用.但是,我想将处理幻灯片事件的内联匿名函数转换为常规函数.

有人可以帮忙吗?

解决方法:

<script type="text/javascript">

function handleSlide(event, ui) { 
    $("#lblInfo").text("left"); 
}

$(document).ready(function () {
    $("#wheelLeft").slider({ 
             orientation: 'vertical', value: 37, 
             min: -100, max: 100, 
             slide: handleSlide
    });
});
</script>

今天关于如何将此函数从样式化组件包转换为常规 jsx的讲解已经结束,谢谢您的阅读,如果想了解更多关于.net – 将PCL转换为常规类库、c – 将shared_ptr转换为常规指针、c# – 如何将此行转换为vb.net、javascript – 如何将匿名函数转换为常规函数?的相关知识,请在本站搜索。

本文标签: