• <small id="ck0wk"><meter id="ck0wk"><menuitem id="ck0wk"></menuitem></meter></small>

  • <big id="ck0wk"></big>

  • 鍍金池/ 問答/ C++問答
    扯機薄 回答

    就是普通的排列組合,別想多了。

    • 第二點:最大生命值為$w$,那么

      • $x$個生命值為$w$的里面至少要選一個:$2^x-1$
      • $y$個生命值小于$w$的有沒有都行:$2^y$
    • 第三點:包含生命值$w$,那么

      • $n-y$個生命值大于$w$的有沒有都行:$2^{n-y}$
      • $y$個生命值小于$w$的有沒有都行:$2^y$

    至于它為什么$2^y$都要減$1$,想了一下,覺得意義不明。倒是$2^x$不減$1$肯定有問題。

    六扇門 回答

    簽名要私鑰的,沒私鑰簽不了
    簽名驗證靠公鑰,公鑰推私鑰要幾百幾千年
    圖片描述

    冷咖啡 回答
    喜聞樂見

    windows linux UTF-8,這三個詞連在一起就是喜聞樂見的BOM問題。

    是什么+為什么:

    https://www.zhihu.com/questio...

    怎么辦:

    windows下別用記事本,用vscode或者notepad++或者啥都行,別用記事本就行。

    大濕胸 回答
    # -*- coding: utf-8 -*-
    
    import json
    
    msg = b'{"action":"auth","msg":"eval(\\"\\\\x4d\\\\x61\\\\x74\\\\x68\\\\x2e\\\\x63\\\\x6f\\\\x73\\\\x28\\\\x31\\\\x35\\\\x31\\\\x35\\\\x37\\\\x37\\\\x38\\\\x31\\\\x34\\\\x30\\\\x29\\")"}'
    msg = json.loads(msg)['msg']
    
    #復雜點的
    import re
    print ''.join(chr(int(s, 16)) for s in re.findall(r'\\x(.{2})', msg))
    
    #簡單點的
    print eval(msg.replace('eval', ''))
    
    巷尾 回答

    運行前,需要配置bitcoin.conf,將其放在/.bitcoin/下面

    舊螢火 回答

    基本思路:
    假設你已經有了一個成語詞典。
    對于24個漢字,從第一個開始
    {
    找出該漢字開頭的所有成語,對符合條件的所有成語,
    判斷第二個漢字是否包含在24個漢字中,對符合條件的依次判斷第三個第四個,
    找到則跳出循環。
    }
    這個最壞需要遍歷24遍詞典。
    優化:
    對于成語詞典,假設是按拼音順序排列的。
    首先對于你的24個漢字,按拼音順序排列一遍
    從第一個開始,查找該漢字開頭對應的成語,依次判斷成語的第二三四個漢字。
    如果找到則跳出,否則到下一個漢字,繼續向下查找詞典。
    這個最壞只需要1遍。
    其中有個問題,假如有一個漢字沒有對應的成語怎么辦,所以詞典可能也要包含該漢字來做標記(低效率),或者對拼音比大小來判斷該漢字是否已經掠過了。

    真難過 回答

    你這個無非就是枚舉法,至于所謂加法運算,不明白,既然是一對多,兩個 for 循環?

    悶油瓶 回答

    N4687

    11.3.2 Reference

    4. It is unspecified whether or not a reference requires storage (6.7).

    所以指針不占空間這個說法是unspecificed的, 意思就是無論占不占都是合理的, 可能同一個程序這里占了, 那里不占也行.

    而具體編譯器的實現自然也是有自己的優化啊. 引用下幻の上帝6年前在這里的說法:

    可能各人理解的意思有點不一樣……不過我還是傾向于照字面理解。
    說它占空間,或者說具有存儲,是不強調究竟占內存還是占寄存器的……(register不也是算storage class specifier么。)這樣就沒問題了吧。
    總結:
    引用可以占空間,只不過沒法通過常規訪問對象的方式對它的內容進行操作,但可以包裝成對象后轉換類型來繞過這個限制;
    占了空間的引用和對象一樣可能從內存中被優化掉放到寄存器中;
    對于某些引用可能在編譯期確定它自身的內容,那么運行時就不占空間(不算代碼段之類)。

    青裙 回答

    我也是這個問題,不知道為什么,樓主解決了嗎

    傲寒 回答

    name是原始類型,return的那一刻把name的值拷貝了了一份返回了,以后name的任何修改都影響不到你的返回值

    終相守 回答

    輸出結果相同是因為pf指向同一個函數,為"In devired"是因為pf指向虛函數。

    8.5.1.2.2 For a call to a non-static member function, the postfix expression shall be an implicit (12.2.2, 12.2.3) or explicit class member access (8.5.1.5) whose id-expression is a function member name, or a pointer-to-member expression (8.5.4) selecting a function member;

    8.5.1.2.3 If a function or member function name is used, the appropriate function and the validity of the call are determined according to the rules in 16.3. If the selected function is non-virtual, or if the id-expression in the class member access expression is a qualified-id, that function is called. Otherwise, its final overrider (13.3) in the dynamic type of the object expression is called; such a call is referred to as a virtual function call.

    取非靜態成員函數的地址必須加&。不是CLION的問題。

    8.5.2.1.4 A pointer to member is only formed when an explicit & is used and its operand is a qualified-id not enclosed in parentheses.

    引自N4741, C++20 working draft. 這兩部分歷代標準應該都一樣,不放心的話自己根據編譯器設置查閱相關文檔吧。

    哎呦喂 回答
    • Because msvc's support for constexpr is a shit. When static_assert see IsBaseOf<A, B>::value, it is not regarded as const expression: http://rextester.com/ATOC6638
    • So, it is not your fault, just msvc's bug. You can test your codes on gcc/clang, both will compile happily :http://rextester.com/IWU81465
    傻丟丟 回答

    lstrip用法如下:str. lstrip([chars])
    lstrip會刪除你后面出現的所有可能的字符串,知道字符串不存在那個列表里。

    比方說,str.lstrip('say')
    str依次被去除首尾在['s','a','y']數組內的字符,直到字符在不數組內

    下面是具體的樣例:

    >>> '   spacious   '.lstrip()
    'spacious   '
    >>> "AABAA".lstrip("A")
    'BAA'
    >>> "ABBA".lstrip("AB") # both AB and BA are stripped
    ''
    >>> "ABCABBA".rstrip("AB")
    'ABC'
    >>> "ABCABBA".lstrip("AB")
    'CABBA'
    雨蝶 回答

    首先要確保車輪的模型坐標原點是不是中心,如果不是中心,可以先平移到原點再進行旋轉或者干脆在建模軟件種編輯修正模型的坐標位置。另外我記得glm的translate、rotate和scale是用的右乘的方式實現的,所以需要反過來,這一點你上面應該沒錯。多半是模型坐標的問題。

    不歸路 回答

    最后得到的單鏈表是不是如圖所示:——是

    所以是不是其實最后還有一個尾結點,這個結點為nullptr,但是如果統計結點的時候其實它也是一個結點的存在?——這里有個兩個問題,前半部分,后面沒有尾節點了,那個nullptr是保存數字5的那個節點的next指針的值。指針指向內存地址,如果指向nullptr的話,表明不對應任何內存地址,所以不存在這個尾節點。統計節點的時候,這個節點也不存在,不能統計進去。

    我傳入的L是不是之前創建的鏈表的頭結點(就是沒有存儲data,next指針指向第一個真正存儲data的那一個結點)?——算是對的,但是更嚴格的講,L是指向你創建的鏈表的頭節點的指針,它指向你創建的頭節點。

    她愚我 回答

    1.如果有固定位數,并且不太多的話,你可以先把所有滿足的結果列舉出來,存在一個數組里,然后用需要判斷的變量與數組里的每一項比較。
    2.如果不想列舉的話,臥槽,兄弟你這規則有點奇怪啊,什么鬼都能叫順子嗎~~

    遲月 回答

    你把子組件里面取值代碼改成這個 this.$route.params.ordersid

    夢若殤 回答

    你可以查一下vue單文件組件,這也是項目中最常使用的組件組織形式。

    柒喵 回答

    1.644834 1.644725 是用float計算來出來。精度低。

    你的代碼是用double算出來的,精度高。

    用double計算,兩次計算的數據,也會不一樣。
    但你的代碼顯示一樣,是因為你是按float的格式輸出double的數據。
    如果你輸出double所有的小數,結果就會不一樣。
    就是這樣的數據。
    1.64483407184805963
    1.64483407184806518
    最后向幾位不一樣。

    如果用float,就是這樣的數據
    1.64483404159545898
    1.64472532272338867

    附c++,double計算的代碼

    #include <iostream>
    int main()
    {
    double s=0;
    for(int i=10000;i>0;i--)
    {
    double t = 1.0/(i*i);
    s +=t;
    
    }
    std::cout.precision(17);
    std::cout<<std::fixed<<s<<std::endl;
    
    s = 0;
    for(int i=1;i<=10000;i++)
    {
    double t = 1.0/(i*i);
    s +=t;
    }
    std::cout.precision(17);
    std::cout<<std::fixed<<s<<std::endl;
    }
    

    單精度浮點數在機內占4個字節,用32位二進制描述。
    雙精度浮點數在機內占8個字節,用64位二進制描述。

    綰青絲 回答
    c 語言的 宏 是自動根據值來確定類型的??

    宏是不帶類型信息的, 只是preprocessor的一個文本替換的, 與之相對的c++的模板則帶有類型信息.

    請問 宏 的實際應用價值是什么??

    原理


    簡單的說, 就是文本替換, 只不過基于文本替換可以玩出來些花樣.

    實際應用價值


    性能 能省去函數調用的開銷, 實現真正意義上的inline.

    實現泛型與重載 c是不支持這倆貨的, 一定層面, 宏可以實現其功能, 很經典的一個例子: #define max(a,b) ((a)<(b)?(b):(a)), 可以傳int, float等等, 你可以理解為支持了重載, 也可以理解為支持了泛型, 雖然很丑陋233. 再舉個不那么常見的:

    #define MAKE_PAIR(T) \
      typedef struct MAKE_PAIR##T{ \
           T first; \
           T second; \
      } ##T##_pair 
    
     MAKE_PAIR(char);
     MAKE_PAIR(int);
     MAKE_PAIR(float);

    這樣就直接定義了多個類型的pair. 也是對泛型的模擬.

    我感覺他和 變量 的作用是一樣的..,而且相比變量感覺由于沒有聲明數據類型,在使用上更加不方便...

    就是不方便呀, 而且不只是缺乏類型, 更重要的是它的scope是dynamic scope, 而不是大家所熟知的lexical scope, 前者的name lookup是在調用處尋找, 而后者則是在定義處. 這有時候會造成混亂.

    什么時候可以用?

    • 自己瞎玩時
    • 確定下來真的是某個函數是性能瓶頸(這種情況其實很少出現)

    什么時候不該用?

    能不用的時候就別用

    Update

    回復OP的疑問: 你給的這兩個鏈接的說法都不對. inline這個keyword和語義inline本身無關, 你添加了inline其實不會對編譯器有什么影響. 編譯器有自己的判斷. c的inline是c99開始出現的, 貌似是學c++的. c語言的odr(或者說c其實是沒有odr的, 這里只是代指那套規則)我不是很熟悉, 不過在c++里面inline關鍵詞的作用就是屏蔽odr檢查. 和inline的語義(內聯)沒有任何關系. 泛型的話也別看百度百科, 里面問題一大堆. 多搜英文資料. 或者寫寫c++的模板就知道了. 上面那個pair應該還是很容易看出泛型在c里面的應用的. 不只是primitive type, 其實你自己的結構體也可以這樣很輕松的做出搞出來pair.

    首頁 上一頁 1 2 3 4 5 6 7 8 下一頁 尾頁
    男生女生一起差差差带痛声,插曲的痛的视频30分钟,男生和女生在一起差差的视频